<!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>Index (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="Index (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>Package</li>
<li>Class</li>
<li>Use</li>
<li><a href="./overview-tree.html">Tree</a></li>
<li><a href="./deprecated-list.html">Deprecated</a></li>
<li class="navBarCell1Rev">Index</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>Prev</li>
<li>Next</li>
</ul>
<ul class="navList">
<li><a href="./index.html?index-all.html" target="_top">Frames</a></li>
<li><a href="index-all.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>
<a name="skip-navbar_top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="contentContainer"><a href="#_A_">A</a>&nbsp;<a href="#_B_">B</a>&nbsp;<a href="#_C_">C</a>&nbsp;<a href="#_D_">D</a>&nbsp;<a href="#_E_">E</a>&nbsp;<a href="#_F_">F</a>&nbsp;<a href="#_G_">G</a>&nbsp;<a href="#_H_">H</a>&nbsp;<a href="#_I_">I</a>&nbsp;<a href="#_J_">J</a>&nbsp;<a href="#_K_">K</a>&nbsp;<a href="#_L_">L</a>&nbsp;<a href="#_M_">M</a>&nbsp;<a href="#_N_">N</a>&nbsp;<a href="#_O_">O</a>&nbsp;<a href="#_P_">P</a>&nbsp;<a href="#_Q_">Q</a>&nbsp;<a href="#_R_">R</a>&nbsp;<a href="#_S_">S</a>&nbsp;<a href="#_T_">T</a>&nbsp;<a href="#_U_">U</a>&nbsp;<a href="#_V_">V</a>&nbsp;<a href="#_W_">W</a>&nbsp;<a href="#_X_">X</a>&nbsp;<a href="#_Y_">Y</a>&nbsp;<a href="#_Z_">Z</a>&nbsp;<a name="_A_">
<!--   -->
</a>
<h2 class="title">A</h2>
<dl>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#abs()">abs()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">absolute value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#abs()">abs()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">absolute value.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Abs.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Abs</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Absolute value function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Abs.html#Abs()">Abs()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Abs.html" title="class in org.apache.commons.math3.analysis.function">Abs</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#abs()">abs()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Return the absolute value of this complex number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#abs()">abs()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Get the absolute value of instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#abs()">abs()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Returns the absolute value of this <a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction"><code>BigFraction</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#abs()">abs()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">Returns the absolute value of this fraction.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#abs()">abs()</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">absolute value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#abs()">abs()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">absolute value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#abs(int)">abs(int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Absolute value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#abs(long)">abs(long)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Absolute value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#abs(float)">abs(float)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Absolute value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#abs(double)">abs(double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Absolute value.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/AbstractConvergenceChecker.html" title="class in org.apache.commons.math3.optim"><span class="strong">AbstractConvergenceChecker</span></a>&lt;<a href="./org/apache/commons/math3/optim/AbstractConvergenceChecker.html" title="type parameter in AbstractConvergenceChecker">PAIR</a>&gt; - Class in <a href="./org/apache/commons/math3/optim/package-summary.html">org.apache.commons.math3.optim</a></dt>
<dd>
<div class="block">Base class for all convergence checker implementations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/AbstractConvergenceChecker.html#AbstractConvergenceChecker(double, double)">AbstractConvergenceChecker(double, double)</a></span> - Constructor for class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/AbstractConvergenceChecker.html" title="class in org.apache.commons.math3.optim">AbstractConvergenceChecker</a></dt>
<dd>
<div class="block">Build an instance with a specified thresholds.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/AbstractConvergenceChecker.html" title="class in org.apache.commons.math3.optimization"><span class="strong">AbstractConvergenceChecker</span></a>&lt;<a href="./org/apache/commons/math3/optimization/AbstractConvergenceChecker.html" title="type parameter in AbstractConvergenceChecker">PAIR</a>&gt; - Class in <a href="./org/apache/commons/math3/optimization/package-summary.html">org.apache.commons.math3.optimization</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/AbstractConvergenceChecker.html#AbstractConvergenceChecker()">AbstractConvergenceChecker()</a></span> - Constructor for class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/AbstractConvergenceChecker.html" title="class in org.apache.commons.math3.optimization">AbstractConvergenceChecker</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>in 3.1 (to be removed in 4.0). Convergence thresholds are
 problem-dependent. As this class is intended for users who want to set
 their own convergence criterion instead of relying on an algorithm's
 default procedure, they should also set the thresholds appropriately
 (cf. MATH-798).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/AbstractConvergenceChecker.html#AbstractConvergenceChecker(double, double)">AbstractConvergenceChecker(double, double)</a></span> - Constructor for class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/AbstractConvergenceChecker.html" title="class in org.apache.commons.math3.optimization">AbstractConvergenceChecker</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build an instance with a specified thresholds.</div>
</dd>
<dt><a href="./org/apache/commons/math3/fitting/AbstractCurveFitter.html" title="class in org.apache.commons.math3.fitting"><span class="strong">AbstractCurveFitter</span></a> - Class in <a href="./org/apache/commons/math3/fitting/package-summary.html">org.apache.commons.math3.fitting</a></dt>
<dd>
<div class="block">Base class that contains common code for fitting parametric univariate
 real functions <code>y = f(p<sub>i</sub>;x)</code>, where <code>x</code> is
 the independent variable and the <code>p<sub>i</sub></code> are the
 <em>parameters</em>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/AbstractCurveFitter.html#AbstractCurveFitter()">AbstractCurveFitter()</a></span> - Constructor for class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/AbstractCurveFitter.html" title="class in org.apache.commons.math3.fitting">AbstractCurveFitter</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/fitting/AbstractCurveFitter.TheoreticalValuesFunction.html" title="class in org.apache.commons.math3.fitting"><span class="strong">AbstractCurveFitter.TheoreticalValuesFunction</span></a> - Class in <a href="./org/apache/commons/math3/fitting/package-summary.html">org.apache.commons.math3.fitting</a></dt>
<dd>
<div class="block">Vector function for computing function theoretical values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/AbstractCurveFitter.TheoreticalValuesFunction.html#AbstractCurveFitter.TheoreticalValuesFunction(org.apache.commons.math3.analysis.ParametricUnivariateFunction, java.util.Collection)">AbstractCurveFitter.TheoreticalValuesFunction(ParametricUnivariateFunction, Collection&lt;WeightedObservedPoint&gt;)</a></span> - Constructor for class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/AbstractCurveFitter.TheoreticalValuesFunction.html" title="class in org.apache.commons.math3.fitting">AbstractCurveFitter.TheoreticalValuesFunction</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optimization/general/AbstractDifferentiableOptimizer.html" title="class in org.apache.commons.math3.optimization.general"><span class="strong">AbstractDifferentiableOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optimization/general/package-summary.html">org.apache.commons.math3.optimization.general</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractDifferentiableOptimizer.html#AbstractDifferentiableOptimizer(org.apache.commons.math3.optimization.ConvergenceChecker)">AbstractDifferentiableOptimizer(ConvergenceChecker&lt;PointValuePair&gt;)</a></span> - Constructor for class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractDifferentiableOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractDifferentiableOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/analysis/solvers/AbstractDifferentiableUnivariateSolver.html" title="class in org.apache.commons.math3.analysis.solvers"><span class="strong">AbstractDifferentiableUnivariateSolver</span></a> - Class in <a href="./org/apache/commons/math3/analysis/solvers/package-summary.html">org.apache.commons.math3.analysis.solvers</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/analysis/solvers/AbstractUnivariateDifferentiableSolver.html" title="class in org.apache.commons.math3.analysis.solvers"><code>AbstractUnivariateDifferentiableSolver</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/AbstractDifferentiableUnivariateSolver.html#AbstractDifferentiableUnivariateSolver(double)">AbstractDifferentiableUnivariateSolver(double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/AbstractDifferentiableUnivariateSolver.html" title="class in org.apache.commons.math3.analysis.solvers">AbstractDifferentiableUnivariateSolver</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Construct a solver with given absolute accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/AbstractDifferentiableUnivariateSolver.html#AbstractDifferentiableUnivariateSolver(double, double, double)">AbstractDifferentiableUnivariateSolver(double, double, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/AbstractDifferentiableUnivariateSolver.html" title="class in org.apache.commons.math3.analysis.solvers">AbstractDifferentiableUnivariateSolver</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Construct a solver with given accuracies.</div>
</dd>
<dt><a href="./org/apache/commons/math3/fitting/leastsquares/AbstractEvaluation.html" title="class in org.apache.commons.math3.fitting.leastsquares"><span class="strong">AbstractEvaluation</span></a> - Class in <a href="./org/apache/commons/math3/fitting/leastsquares/package-summary.html">org.apache.commons.math3.fitting.leastsquares</a></dt>
<dd>
<div class="block">An implementation of <a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.Evaluation.html" title="interface in org.apache.commons.math3.fitting.leastsquares"><code>LeastSquaresProblem.Evaluation</code></a> that is designed for extension.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear"><span class="strong">AbstractFieldMatrix</span></a>&lt;<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="type parameter in AbstractFieldMatrix">T</a> extends <a href="./org/apache/commons/math3/FieldElement.html" title="interface in org.apache.commons.math3">FieldElement</a>&lt;<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="type parameter in AbstractFieldMatrix">T</a>&gt;&gt; - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Basic implementation of <a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear"><code>FieldMatrix</code></a> methods regardless of the underlying storage.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#AbstractFieldMatrix()">AbstractFieldMatrix()</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Constructor for use with Serializable</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#AbstractFieldMatrix(org.apache.commons.math3.Field)">AbstractFieldMatrix(Field&lt;T&gt;)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Creates a matrix with no data</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#AbstractFieldMatrix(org.apache.commons.math3.Field, int, int)">AbstractFieldMatrix(Field&lt;T&gt;, int, int)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Create a new FieldMatrix<T> with the supplied row and column dimensions.</div>
</dd>
<dt><a href="./org/apache/commons/math3/fraction/AbstractFormat.html" title="class in org.apache.commons.math3.fraction"><span class="strong">AbstractFormat</span></a> - Class in <a href="./org/apache/commons/math3/fraction/package-summary.html">org.apache.commons.math3.fraction</a></dt>
<dd>
<div class="block">Common part shared by both <a href="./org/apache/commons/math3/fraction/FractionFormat.html" title="class in org.apache.commons.math3.fraction"><code>FractionFormat</code></a> and <a href="./org/apache/commons/math3/fraction/BigFractionFormat.html" title="class in org.apache.commons.math3.fraction"><code>BigFractionFormat</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/AbstractFormat.html#AbstractFormat()">AbstractFormat()</a></span> - Constructor for class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/AbstractFormat.html" title="class in org.apache.commons.math3.fraction">AbstractFormat</a></dt>
<dd>
<div class="block">Create an improper formatting instance with the default number format
 for the numerator and denominator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/AbstractFormat.html#AbstractFormat(java.text.NumberFormat)">AbstractFormat(NumberFormat)</a></span> - Constructor for class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/AbstractFormat.html" title="class in org.apache.commons.math3.fraction">AbstractFormat</a></dt>
<dd>
<div class="block">Create an improper formatting instance with a custom number format for
 both the numerator and denominator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/AbstractFormat.html#AbstractFormat(java.text.NumberFormat, java.text.NumberFormat)">AbstractFormat(NumberFormat, NumberFormat)</a></span> - Constructor for class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/AbstractFormat.html" title="class in org.apache.commons.math3.fraction">AbstractFormat</a></dt>
<dd>
<div class="block">Create an improper formatting instance with a custom number format for
 the numerator and a custom number format for the denominator.</div>
</dd>
<dt><a href="./org/apache/commons/math3/distribution/AbstractIntegerDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">AbstractIntegerDistribution</span></a> - Class in <a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a></dt>
<dd>
<div class="block">Base class for integer-valued discrete distributions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/AbstractIntegerDistribution.html#AbstractIntegerDistribution()">AbstractIntegerDistribution()</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/AbstractIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractIntegerDistribution</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1, to be removed in 4.0. Please use
 <a href="./org/apache/commons/math3/distribution/AbstractIntegerDistribution.html#AbstractIntegerDistribution(org.apache.commons.math3.random.RandomGenerator)"><code>AbstractIntegerDistribution.AbstractIntegerDistribution(RandomGenerator)</code></a> instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/AbstractIntegerDistribution.html#AbstractIntegerDistribution(org.apache.commons.math3.random.RandomGenerator)">AbstractIntegerDistribution(RandomGenerator)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/AbstractIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractIntegerDistribution</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/ode/AbstractIntegrator.html" title="class in org.apache.commons.math3.ode"><span class="strong">AbstractIntegrator</span></a> - Class in <a href="./org/apache/commons/math3/ode/package-summary.html">org.apache.commons.math3.ode</a></dt>
<dd>
<div class="block">Base class managing common boilerplate for all integrators.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractIntegrator.html#AbstractIntegrator(java.lang.String)">AbstractIntegrator(String)</a></span> - Constructor for class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractIntegrator.html" title="class in org.apache.commons.math3.ode">AbstractIntegrator</a></dt>
<dd>
<div class="block">Build an instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractIntegrator.html#AbstractIntegrator()">AbstractIntegrator()</a></span> - Constructor for class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractIntegrator.html" title="class in org.apache.commons.math3.ode">AbstractIntegrator</a></dt>
<dd>
<div class="block">Build an instance with a null name.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector.jacobian"><span class="strong">AbstractLeastSquaresOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/package-summary.html">org.apache.commons.math3.optim.nonlinear.vector.jacobian</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>All classes and interfaces in this package are deprecated.
 The optimizers that were provided here were moved to the
 <a href="./org/apache/commons/math3/fitting/leastsquares/package-summary.html"><code>org.apache.commons.math3.fitting.leastsquares</code></a> package
 (cf. MATH-1008).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/AbstractLeastSquaresOptimizer.html#AbstractLeastSquaresOptimizer(org.apache.commons.math3.optim.ConvergenceChecker)">AbstractLeastSquaresOptimizer(ConvergenceChecker&lt;PointVectorValuePair&gt;)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.vector.jacobian.<a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector.jacobian">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optimization.general"><span class="strong">AbstractLeastSquaresOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optimization/general/package-summary.html">org.apache.commons.math3.optimization.general</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#AbstractLeastSquaresOptimizer()">AbstractLeastSquaresOptimizer()</a></span> - Constructor for class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>See <a href="./org/apache/commons/math3/optimization/SimpleValueChecker.html#SimpleValueChecker()"><code>SimpleValueChecker.SimpleValueChecker()</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#AbstractLeastSquaresOptimizer(org.apache.commons.math3.optimization.ConvergenceChecker)">AbstractLeastSquaresOptimizer(ConvergenceChecker&lt;PointVectorValuePair&gt;)</a></span> - Constructor for class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optimization/linear/AbstractLinearOptimizer.html" title="class in org.apache.commons.math3.optimization.linear"><span class="strong">AbstractLinearOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optimization/linear/package-summary.html">org.apache.commons.math3.optimization.linear</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/AbstractLinearOptimizer.html#AbstractLinearOptimizer()">AbstractLinearOptimizer()</a></span> - Constructor for class org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/AbstractLinearOptimizer.html" title="class in org.apache.commons.math3.optimization.linear">AbstractLinearOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Simple constructor with default settings.</div>
</dd>
<dt><a href="./org/apache/commons/math3/genetics/AbstractListChromosome.html" title="class in org.apache.commons.math3.genetics"><span class="strong">AbstractListChromosome</span></a>&lt;<a href="./org/apache/commons/math3/genetics/AbstractListChromosome.html" title="type parameter in AbstractListChromosome">T</a>&gt; - Class in <a href="./org/apache/commons/math3/genetics/package-summary.html">org.apache.commons.math3.genetics</a></dt>
<dd>
<div class="block">Chromosome represented by an immutable list of a fixed length.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/AbstractListChromosome.html#AbstractListChromosome(java.util.List)">AbstractListChromosome(List&lt;T&gt;)</a></span> - Constructor for class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/AbstractListChromosome.html" title="class in org.apache.commons.math3.genetics">AbstractListChromosome</a></dt>
<dd>
<div class="block">Constructor, copying the input representation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/AbstractListChromosome.html#AbstractListChromosome(T[])">AbstractListChromosome(T[])</a></span> - Constructor for class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/AbstractListChromosome.html" title="class in org.apache.commons.math3.genetics">AbstractListChromosome</a></dt>
<dd>
<div class="block">Constructor, copying the input representation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/AbstractListChromosome.html#AbstractListChromosome(java.util.List, boolean)">AbstractListChromosome(List&lt;T&gt;, boolean)</a></span> - Constructor for class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/AbstractListChromosome.html" title="class in org.apache.commons.math3.genetics">AbstractListChromosome</a></dt>
<dd>
<div class="block">Constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression"><span class="strong">AbstractMultipleLinearRegression</span></a> - Class in <a href="./org/apache/commons/math3/stat/regression/package-summary.html">org.apache.commons.math3.stat.regression</a></dt>
<dd>
<div class="block">Abstract base class for implementations of MultipleLinearRegression.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html#AbstractMultipleLinearRegression()">AbstractMultipleLinearRegression()</a></span> - Constructor for class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">AbstractMultipleLinearRegression</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/distribution/AbstractMultivariateRealDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">AbstractMultivariateRealDistribution</span></a> - Class in <a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a></dt>
<dd>
<div class="block">Base class for multivariate probability distributions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/AbstractMultivariateRealDistribution.html#AbstractMultivariateRealDistribution(org.apache.commons.math3.random.RandomGenerator, int)">AbstractMultivariateRealDistribution(RandomGenerator, int)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/AbstractMultivariateRealDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractMultivariateRealDistribution</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optim/AbstractOptimizationProblem.html" title="class in org.apache.commons.math3.optim"><span class="strong">AbstractOptimizationProblem</span></a>&lt;<a href="./org/apache/commons/math3/optim/AbstractOptimizationProblem.html" title="type parameter in AbstractOptimizationProblem">PAIR</a>&gt; - Class in <a href="./org/apache/commons/math3/optim/package-summary.html">org.apache.commons.math3.optim</a></dt>
<dd>
<div class="block">Base class for implementing optimization problems.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/AbstractOptimizationProblem.html#AbstractOptimizationProblem(int, int, org.apache.commons.math3.optim.ConvergenceChecker)">AbstractOptimizationProblem(int, int, ConvergenceChecker&lt;PAIR&gt;)</a></span> - Constructor for class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/AbstractOptimizationProblem.html" title="class in org.apache.commons.math3.optim">AbstractOptimizationProblem</a></dt>
<dd>
<div class="block">Create an <a href="./org/apache/commons/math3/optim/AbstractOptimizationProblem.html" title="class in org.apache.commons.math3.optim"><code>AbstractOptimizationProblem</code></a> from the given data.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/AbstractParameterizable.html" title="class in org.apache.commons.math3.ode"><span class="strong">AbstractParameterizable</span></a> - Class in <a href="./org/apache/commons/math3/ode/package-summary.html">org.apache.commons.math3.ode</a></dt>
<dd>
<div class="block">This abstract class provides boilerplate parameters list.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractParameterizable.html#AbstractParameterizable(java.lang.String...)">AbstractParameterizable(String...)</a></span> - Constructor for class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractParameterizable.html" title="class in org.apache.commons.math3.ode">AbstractParameterizable</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractParameterizable.html#AbstractParameterizable(java.util.Collection)">AbstractParameterizable(Collection&lt;String&gt;)</a></span> - Constructor for class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractParameterizable.html" title="class in org.apache.commons.math3.ode">AbstractParameterizable</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/solvers/AbstractPolynomialSolver.html" title="class in org.apache.commons.math3.analysis.solvers"><span class="strong">AbstractPolynomialSolver</span></a> - Class in <a href="./org/apache/commons/math3/analysis/solvers/package-summary.html">org.apache.commons.math3.analysis.solvers</a></dt>
<dd>
<div class="block">Base class for solvers.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/AbstractPolynomialSolver.html#AbstractPolynomialSolver(double)">AbstractPolynomialSolver(double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/AbstractPolynomialSolver.html" title="class in org.apache.commons.math3.analysis.solvers">AbstractPolynomialSolver</a></dt>
<dd>
<div class="block">Construct a solver with given absolute accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/AbstractPolynomialSolver.html#AbstractPolynomialSolver(double, double)">AbstractPolynomialSolver(double, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/AbstractPolynomialSolver.html" title="class in org.apache.commons.math3.analysis.solvers">AbstractPolynomialSolver</a></dt>
<dd>
<div class="block">Construct a solver with given accuracies.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/AbstractPolynomialSolver.html#AbstractPolynomialSolver(double, double, double)">AbstractPolynomialSolver(double, double, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/AbstractPolynomialSolver.html" title="class in org.apache.commons.math3.analysis.solvers">AbstractPolynomialSolver</a></dt>
<dd>
<div class="block">Construct a solver with given accuracies.</div>
</dd>
<dt><a href="./org/apache/commons/math3/random/AbstractRandomGenerator.html" title="class in org.apache.commons.math3.random"><span class="strong">AbstractRandomGenerator</span></a> - Class in <a href="./org/apache/commons/math3/random/package-summary.html">org.apache.commons.math3.random</a></dt>
<dd>
<div class="block">Abstract class implementing the <a href="./org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random"><code>RandomGenerator</code></a> interface.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/AbstractRandomGenerator.html#AbstractRandomGenerator()">AbstractRandomGenerator()</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/AbstractRandomGenerator.html" title="class in org.apache.commons.math3.random">AbstractRandomGenerator</a></dt>
<dd>
<div class="block">Construct a RandomGenerator.</div>
</dd>
<dt><a href="./org/apache/commons/math3/distribution/AbstractRealDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">AbstractRealDistribution</span></a> - Class in <a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a></dt>
<dd>
<div class="block">Base class for probability distributions on the reals.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/AbstractRealDistribution.html#AbstractRealDistribution()">AbstractRealDistribution()</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/AbstractRealDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractRealDistribution</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1, to be removed in 4.0. Please use
 <a href="./org/apache/commons/math3/distribution/AbstractRealDistribution.html#AbstractRealDistribution(org.apache.commons.math3.random.RandomGenerator)"><code>AbstractRealDistribution.AbstractRealDistribution(RandomGenerator)</code></a> instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/AbstractRealDistribution.html#AbstractRealDistribution(org.apache.commons.math3.random.RandomGenerator)">AbstractRealDistribution(RandomGenerator)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/AbstractRealDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractRealDistribution</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear"><span class="strong">AbstractRealMatrix</span></a> - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Basic implementation of RealMatrix methods regardless of the underlying storage.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#AbstractRealMatrix()">AbstractRealMatrix()</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Creates a matrix with no data</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#AbstractRealMatrix(int, int)">AbstractRealMatrix(int, int)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Create a new RealMatrix with the supplied row and column dimensions.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html" title="class in org.apache.commons.math3.geometry.partitioning"><span class="strong">AbstractRegion</span></a>&lt;<a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html" title="type parameter in AbstractRegion">S</a> extends <a href="./org/apache/commons/math3/geometry/Space.html" title="interface in org.apache.commons.math3.geometry">Space</a>,<a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html" title="type parameter in AbstractRegion">T</a> extends <a href="./org/apache/commons/math3/geometry/Space.html" title="interface in org.apache.commons.math3.geometry">Space</a>&gt; - Class in <a href="./org/apache/commons/math3/geometry/partitioning/package-summary.html">org.apache.commons.math3.geometry.partitioning</a></dt>
<dd>
<div class="block">Abstract class for all regions, independently of geometry type or dimension.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html#AbstractRegion(double)">AbstractRegion(double)</a></span> - Constructor for class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractRegion</a></dt>
<dd>
<div class="block">Build a region representing the whole space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html#AbstractRegion(org.apache.commons.math3.geometry.partitioning.BSPTree, double)">AbstractRegion(BSPTree&lt;S&gt;, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractRegion</a></dt>
<dd>
<div class="block">Build a region from an inside/outside BSP tree.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html#AbstractRegion(java.util.Collection, double)">AbstractRegion(Collection&lt;SubHyperplane&lt;S&gt;&gt;, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractRegion</a></dt>
<dd>
<div class="block">Build a Region from a Boundary REPresentation (B-rep).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html#AbstractRegion(org.apache.commons.math3.geometry.partitioning.Hyperplane[], double)">AbstractRegion(Hyperplane&lt;S&gt;[], double)</a></span> - Constructor for class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractRegion</a></dt>
<dd>
<div class="block">Build a convex region from an array of bounding hyperplanes.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/general/AbstractScalarDifferentiableOptimizer.html" title="class in org.apache.commons.math3.optimization.general"><span class="strong">AbstractScalarDifferentiableOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optimization/general/package-summary.html">org.apache.commons.math3.optimization.general</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractScalarDifferentiableOptimizer.html#AbstractScalarDifferentiableOptimizer()">AbstractScalarDifferentiableOptimizer()</a></span> - Constructor for class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractScalarDifferentiableOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractScalarDifferentiableOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>See <a href="./org/apache/commons/math3/optimization/SimpleValueChecker.html#SimpleValueChecker()"><code>SimpleValueChecker.SimpleValueChecker()</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractScalarDifferentiableOptimizer.html#AbstractScalarDifferentiableOptimizer(org.apache.commons.math3.optimization.ConvergenceChecker)">AbstractScalarDifferentiableOptimizer(ConvergenceChecker&lt;PointValuePair&gt;)</a></span> - Constructor for class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractScalarDifferentiableOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractScalarDifferentiableOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/AbstractSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv"><span class="strong">AbstractSimplex</span></a> - Class in <a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/package-summary.html">org.apache.commons.math3.optim.nonlinear.scalar.noderiv</a></dt>
<dd>
<div class="block">This class implements the simplex concept.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/AbstractSimplex.html#AbstractSimplex(int)">AbstractSimplex(int)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/AbstractSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">AbstractSimplex</a></dt>
<dd>
<div class="block">Build a unit hypercube simplex.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/AbstractSimplex.html#AbstractSimplex(int, double)">AbstractSimplex(int, double)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/AbstractSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">AbstractSimplex</a></dt>
<dd>
<div class="block">Build a hypercube simplex with the given side length.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/AbstractSimplex.html#AbstractSimplex(double[])">AbstractSimplex(double[])</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/AbstractSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">AbstractSimplex</a></dt>
<dd>
<div class="block">The start configuration for simplex is built from a box parallel to
 the canonical axes of the space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/AbstractSimplex.html#AbstractSimplex(double[][])">AbstractSimplex(double[][])</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/AbstractSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">AbstractSimplex</a></dt>
<dd>
<div class="block">The real initial simplex will be set up by moving the reference
 simplex such that its first point is located at the start point of the
 optimization.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/direct/AbstractSimplex.html" title="class in org.apache.commons.math3.optimization.direct"><span class="strong">AbstractSimplex</span></a> - Class in <a href="./org/apache/commons/math3/optimization/direct/package-summary.html">org.apache.commons.math3.optimization.direct</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/AbstractSimplex.html#AbstractSimplex(int)">AbstractSimplex(int)</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/AbstractSimplex.html" title="class in org.apache.commons.math3.optimization.direct">AbstractSimplex</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a unit hypercube simplex.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/AbstractSimplex.html#AbstractSimplex(int, double)">AbstractSimplex(int, double)</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/AbstractSimplex.html" title="class in org.apache.commons.math3.optimization.direct">AbstractSimplex</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a hypercube simplex with the given side length.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/AbstractSimplex.html#AbstractSimplex(double[])">AbstractSimplex(double[])</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/AbstractSimplex.html" title="class in org.apache.commons.math3.optimization.direct">AbstractSimplex</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">The start configuration for simplex is built from a box parallel to
 the canonical axes of the space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/AbstractSimplex.html#AbstractSimplex(double[][])">AbstractSimplex(double[][])</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/AbstractSimplex.html" title="class in org.apache.commons.math3.optimization.direct">AbstractSimplex</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">The real initial simplex will be set up by moving the reference
 simplex such that its first point is located at the start point of the
 optimization.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling"><span class="strong">AbstractStepInterpolator</span></a> - Class in <a href="./org/apache/commons/math3/ode/sampling/package-summary.html">org.apache.commons.math3.ode.sampling</a></dt>
<dd>
<div class="block">This abstract class represents an interpolator over the last step
 during an ODE integration.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#AbstractStepInterpolator()">AbstractStepInterpolator()</a></span> - Constructor for class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#AbstractStepInterpolator(double[], boolean, org.apache.commons.math3.ode.EquationsMapper, org.apache.commons.math3.ode.EquationsMapper[])">AbstractStepInterpolator(double[], boolean, EquationsMapper, EquationsMapper[])</a></span> - Constructor for class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#AbstractStepInterpolator(org.apache.commons.math3.ode.sampling.AbstractStepInterpolator)">AbstractStepInterpolator(AbstractStepInterpolator)</a></span> - Constructor for class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">Copy constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/AbstractStorelessUnivariateStatistic.html" title="class in org.apache.commons.math3.stat.descriptive"><span class="strong">AbstractStorelessUnivariateStatistic</span></a> - Class in <a href="./org/apache/commons/math3/stat/descriptive/package-summary.html">org.apache.commons.math3.stat.descriptive</a></dt>
<dd>
<div class="block">Abstract implementation of the <a href="./org/apache/commons/math3/stat/descriptive/StorelessUnivariateStatistic.html" title="interface in org.apache.commons.math3.stat.descriptive"><code>StorelessUnivariateStatistic</code></a> interface.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AbstractStorelessUnivariateStatistic.html#AbstractStorelessUnivariateStatistic()">AbstractStorelessUnivariateStatistic()</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AbstractStorelessUnivariateStatistic.html" title="class in org.apache.commons.math3.stat.descriptive">AbstractStorelessUnivariateStatistic</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/geometry/partitioning/AbstractSubHyperplane.html" title="class in org.apache.commons.math3.geometry.partitioning"><span class="strong">AbstractSubHyperplane</span></a>&lt;<a href="./org/apache/commons/math3/geometry/partitioning/AbstractSubHyperplane.html" title="type parameter in AbstractSubHyperplane">S</a> extends <a href="./org/apache/commons/math3/geometry/Space.html" title="interface in org.apache.commons.math3.geometry">Space</a>,<a href="./org/apache/commons/math3/geometry/partitioning/AbstractSubHyperplane.html" title="type parameter in AbstractSubHyperplane">T</a> extends <a href="./org/apache/commons/math3/geometry/Space.html" title="interface in org.apache.commons.math3.geometry">Space</a>&gt; - Class in <a href="./org/apache/commons/math3/geometry/partitioning/package-summary.html">org.apache.commons.math3.geometry.partitioning</a></dt>
<dd>
<div class="block">This class implements the dimension-independent parts of <a href="./org/apache/commons/math3/geometry/partitioning/SubHyperplane.html" title="interface in org.apache.commons.math3.geometry.partitioning"><code>SubHyperplane</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractSubHyperplane.html#AbstractSubHyperplane(org.apache.commons.math3.geometry.partitioning.Hyperplane, org.apache.commons.math3.geometry.partitioning.Region)">AbstractSubHyperplane(Hyperplane&lt;S&gt;, Region&lt;T&gt;)</a></span> - Constructor for class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractSubHyperplane.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractSubHyperplane</a></dt>
<dd>
<div class="block">Build a sub-hyperplane from an hyperplane and a region.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/solvers/AbstractUnivariateDifferentiableSolver.html" title="class in org.apache.commons.math3.analysis.solvers"><span class="strong">AbstractUnivariateDifferentiableSolver</span></a> - Class in <a href="./org/apache/commons/math3/analysis/solvers/package-summary.html">org.apache.commons.math3.analysis.solvers</a></dt>
<dd>
<div class="block">Provide a default implementation for several functions useful to generic
 solvers.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/AbstractUnivariateDifferentiableSolver.html#AbstractUnivariateDifferentiableSolver(double)">AbstractUnivariateDifferentiableSolver(double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/AbstractUnivariateDifferentiableSolver.html" title="class in org.apache.commons.math3.analysis.solvers">AbstractUnivariateDifferentiableSolver</a></dt>
<dd>
<div class="block">Construct a solver with given absolute accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/AbstractUnivariateDifferentiableSolver.html#AbstractUnivariateDifferentiableSolver(double, double, double)">AbstractUnivariateDifferentiableSolver(double, double, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/AbstractUnivariateDifferentiableSolver.html" title="class in org.apache.commons.math3.analysis.solvers">AbstractUnivariateDifferentiableSolver</a></dt>
<dd>
<div class="block">Construct a solver with given accuracies.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/solvers/AbstractUnivariateSolver.html" title="class in org.apache.commons.math3.analysis.solvers"><span class="strong">AbstractUnivariateSolver</span></a> - Class in <a href="./org/apache/commons/math3/analysis/solvers/package-summary.html">org.apache.commons.math3.analysis.solvers</a></dt>
<dd>
<div class="block">Base class for solvers.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/AbstractUnivariateSolver.html#AbstractUnivariateSolver(double)">AbstractUnivariateSolver(double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/AbstractUnivariateSolver.html" title="class in org.apache.commons.math3.analysis.solvers">AbstractUnivariateSolver</a></dt>
<dd>
<div class="block">Construct a solver with given absolute accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/AbstractUnivariateSolver.html#AbstractUnivariateSolver(double, double)">AbstractUnivariateSolver(double, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/AbstractUnivariateSolver.html" title="class in org.apache.commons.math3.analysis.solvers">AbstractUnivariateSolver</a></dt>
<dd>
<div class="block">Construct a solver with given accuracies.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/AbstractUnivariateSolver.html#AbstractUnivariateSolver(double, double, double)">AbstractUnivariateSolver(double, double, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/AbstractUnivariateSolver.html" title="class in org.apache.commons.math3.analysis.solvers">AbstractUnivariateSolver</a></dt>
<dd>
<div class="block">Construct a solver with given accuracies.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/AbstractUnivariateStatistic.html" title="class in org.apache.commons.math3.stat.descriptive"><span class="strong">AbstractUnivariateStatistic</span></a> - Class in <a href="./org/apache/commons/math3/stat/descriptive/package-summary.html">org.apache.commons.math3.stat.descriptive</a></dt>
<dd>
<div class="block">Abstract base class for all implementations of the
 <a href="./org/apache/commons/math3/stat/descriptive/UnivariateStatistic.html" title="interface in org.apache.commons.math3.stat.descriptive"><code>UnivariateStatistic</code></a> interface.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AbstractUnivariateStatistic.html#AbstractUnivariateStatistic()">AbstractUnivariateStatistic()</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AbstractUnivariateStatistic.html" title="class in org.apache.commons.math3.stat.descriptive">AbstractUnivariateStatistic</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/random/AbstractWell.html" title="class in org.apache.commons.math3.random"><span class="strong">AbstractWell</span></a> - Class in <a href="./org/apache/commons/math3/random/package-summary.html">org.apache.commons.math3.random</a></dt>
<dd>
<div class="block">This abstract class implements the WELL class of pseudo-random number generator
 from Fran&ccedil;ois Panneton, Pierre L'Ecuyer and Makoto Matsumoto.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/AbstractWell.html#AbstractWell(int, int, int, int)">AbstractWell(int, int, int, int)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/AbstractWell.html" title="class in org.apache.commons.math3.random">AbstractWell</a></dt>
<dd>
<div class="block">Creates a new random number generator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/AbstractWell.html#AbstractWell(int, int, int, int, int)">AbstractWell(int, int, int, int, int)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/AbstractWell.html" title="class in org.apache.commons.math3.random">AbstractWell</a></dt>
<dd>
<div class="block">Creates a new random number generator using a single int seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/AbstractWell.html#AbstractWell(int, int, int, int, int[])">AbstractWell(int, int, int, int, int[])</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/AbstractWell.html" title="class in org.apache.commons.math3.random">AbstractWell</a></dt>
<dd>
<div class="block">Creates a new random number generator using an int array seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/AbstractWell.html#AbstractWell(int, int, int, int, long)">AbstractWell(int, int, int, int, long)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/AbstractWell.html" title="class in org.apache.commons.math3.random">AbstractWell</a></dt>
<dd>
<div class="block">Creates a new random number generator using a single long seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractIntegrator.html#acceptStep(org.apache.commons.math3.ode.sampling.AbstractStepInterpolator, double[], double[], double)">acceptStep(AbstractStepInterpolator, double[], double[], double)</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractIntegrator.html" title="class in org.apache.commons.math3.ode">AbstractIntegrator</a></dt>
<dd>
<div class="block">Accept a step, triggering events and step handlers.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#acos()">acos()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Arc cosine operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#acos(double[], int, double[], int)">acos(double[], int, double[], int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Compute arc cosine of a derivative structure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#acos()">acos()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Arc cosine operation.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Acos.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Acos</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Arc-cosine function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Acos.html#Acos()">Acos()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Acos.html" title="class in org.apache.commons.math3.analysis.function">Acos</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#acos()">acos()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Compute the
 <a href="http://mathworld.wolfram.com/InverseCosine.html" TARGET="_top">
 inverse cosine</a> of this complex number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#acos()">acos()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Arc cosine operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpMath.html#acos(org.apache.commons.math3.dfp.Dfp)">acos(Dfp)</a></span> - Static method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpMath.html" title="class in org.apache.commons.math3.dfp">DfpMath</a></dt>
<dd>
<div class="block">computes the arc-cosine of the argument.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#acos()">acos()</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Arc cosine operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#acos()">acos()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Arc cosine operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#acos(double)">acos(double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Compute the arc cosine of a number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#acosh()">acosh()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Inverse hyperbolic cosine operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#acosh(double[], int, double[], int)">acosh(double[], int, double[], int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Compute inverse hyperbolic cosine of a derivative structure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#acosh()">acosh()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Inverse hyperbolic cosine operation.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Acosh.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Acosh</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Hyperbolic arc-cosine function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Acosh.html#Acosh()">Acosh()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Acosh.html" title="class in org.apache.commons.math3.analysis.function">Acosh</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#acosh()">acosh()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Inverse hyperbolic cosine operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#acosh()">acosh()</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Inverse hyperbolic cosine operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#acosh()">acosh()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Inverse hyperbolic cosine operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#acosh(double)">acosh(double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Compute the inverse hyperbolic cosine of a number.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/nonstiff/AdamsBashforthIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff"><span class="strong">AdamsBashforthIntegrator</span></a> - Class in <a href="./org/apache/commons/math3/ode/nonstiff/package-summary.html">org.apache.commons.math3.ode.nonstiff</a></dt>
<dd>
<div class="block">This class implements explicit Adams-Bashforth integrators for Ordinary
 Differential Equations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdamsBashforthIntegrator.html#AdamsBashforthIntegrator(int, double, double, double, double)">AdamsBashforthIntegrator(int, double, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdamsBashforthIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">AdamsBashforthIntegrator</a></dt>
<dd>
<div class="block">Build an Adams-Bashforth integrator with the given order and step control parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdamsBashforthIntegrator.html#AdamsBashforthIntegrator(int, double, double, double[], double[])">AdamsBashforthIntegrator(int, double, double, double[], double[])</a></span> - Constructor for class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdamsBashforthIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">AdamsBashforthIntegrator</a></dt>
<dd>
<div class="block">Build an Adams-Bashforth integrator with the given order and step control parameters.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/nonstiff/AdamsIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff"><span class="strong">AdamsIntegrator</span></a> - Class in <a href="./org/apache/commons/math3/ode/nonstiff/package-summary.html">org.apache.commons.math3.ode.nonstiff</a></dt>
<dd>
<div class="block">Base class for <a href="./org/apache/commons/math3/ode/nonstiff/AdamsBashforthIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff"><code>Adams-Bashforth</code></a> and
 <a href="./org/apache/commons/math3/ode/nonstiff/AdamsMoultonIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff"><code>Adams-Moulton</code></a> integrators.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdamsIntegrator.html#AdamsIntegrator(java.lang.String, int, int, double, double, double, double)">AdamsIntegrator(String, int, int, double, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdamsIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">AdamsIntegrator</a></dt>
<dd>
<div class="block">Build an Adams integrator with the given order and step control parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdamsIntegrator.html#AdamsIntegrator(java.lang.String, int, int, double, double, double[], double[])">AdamsIntegrator(String, int, int, double, double, double[], double[])</a></span> - Constructor for class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdamsIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">AdamsIntegrator</a></dt>
<dd>
<div class="block">Build an Adams integrator with the given order and step control parameters.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/nonstiff/AdamsMoultonIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff"><span class="strong">AdamsMoultonIntegrator</span></a> - Class in <a href="./org/apache/commons/math3/ode/nonstiff/package-summary.html">org.apache.commons.math3.ode.nonstiff</a></dt>
<dd>
<div class="block">This class implements implicit Adams-Moulton integrators for Ordinary
 Differential Equations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdamsMoultonIntegrator.html#AdamsMoultonIntegrator(int, double, double, double, double)">AdamsMoultonIntegrator(int, double, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdamsMoultonIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">AdamsMoultonIntegrator</a></dt>
<dd>
<div class="block">Build an Adams-Moulton integrator with the given order and error control parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdamsMoultonIntegrator.html#AdamsMoultonIntegrator(int, double, double, double[], double[])">AdamsMoultonIntegrator(int, double, double, double[], double[])</a></span> - Constructor for class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdamsMoultonIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">AdamsMoultonIntegrator</a></dt>
<dd>
<div class="block">Build an Adams-Moulton integrator with the given order and error control parameters.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/nonstiff/AdamsNordsieckTransformer.html" title="class in org.apache.commons.math3.ode.nonstiff"><span class="strong">AdamsNordsieckTransformer</span></a> - Class in <a href="./org/apache/commons/math3/ode/nonstiff/package-summary.html">org.apache.commons.math3.ode.nonstiff</a></dt>
<dd>
<div class="block">Transformer to Nordsieck vectors for Adams integrators.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff"><span class="strong">AdaptiveStepsizeIntegrator</span></a> - Class in <a href="./org/apache/commons/math3/ode/nonstiff/package-summary.html">org.apache.commons.math3.ode.nonstiff</a></dt>
<dd>
<div class="block">This abstract class holds the common part of all adaptive
 stepsize integrators for Ordinary Differential Equations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html#AdaptiveStepsizeIntegrator(java.lang.String, double, double, double, double)">AdaptiveStepsizeIntegrator(String, double, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">AdaptiveStepsizeIntegrator</a></dt>
<dd>
<div class="block">Build an integrator with the given stepsize bounds.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html#AdaptiveStepsizeIntegrator(java.lang.String, double, double, double[], double[])">AdaptiveStepsizeIntegrator(String, double, double, double[], double[])</a></span> - Constructor for class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">AdaptiveStepsizeIntegrator</a></dt>
<dd>
<div class="block">Build an integrator with the given stepsize bounds.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#add(double)">add(double)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">'+' operator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#add(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">add(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Compute this + a.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#add(double[], int, double[], int, double[], int)">add(double[], int, double[], int, double[], int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Perform addition of two derivative structures.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#add(org.apache.commons.math3.analysis.differentiation.SparseGradient)">add(SparseGradient)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Compute this + a.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#add(double)">add(double)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">'+' operator.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Add.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Add</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Add the two operands.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Add.html#Add()">Add()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Add.html" title="class in org.apache.commons.math3.analysis.function">Add</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/FunctionUtils.html#add(org.apache.commons.math3.analysis.UnivariateFunction...)">add(UnivariateFunction...)</a></span> - Static method in class org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/FunctionUtils.html" title="class in org.apache.commons.math3.analysis">FunctionUtils</a></dt>
<dd>
<div class="block">Adds functions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/FunctionUtils.html#add(org.apache.commons.math3.analysis.differentiation.UnivariateDifferentiableFunction...)">add(UnivariateDifferentiableFunction...)</a></span> - Static method in class org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/FunctionUtils.html" title="class in org.apache.commons.math3.analysis">FunctionUtils</a></dt>
<dd>
<div class="block">Adds functions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/FunctionUtils.html#add(org.apache.commons.math3.analysis.DifferentiableUnivariateFunction...)">add(DifferentiableUnivariateFunction...)</a></span> - Static method in class org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/FunctionUtils.html" title="class in org.apache.commons.math3.analysis">FunctionUtils</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1 replaced by <a href="./org/apache/commons/math3/analysis/FunctionUtils.html#add(org.apache.commons.math3.analysis.differentiation.UnivariateDifferentiableFunction...)"><code>FunctionUtils.add(UnivariateDifferentiableFunction...)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.html#add(org.apache.commons.math3.analysis.polynomials.PolynomialFunction)">add(PolynomialFunction)</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunction</a></dt>
<dd>
<div class="block">Add a polynomial to the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#add(org.apache.commons.math3.complex.Complex)">add(Complex)</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Returns a <code>Complex</code> whose value is
 <code>(this + addend)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#add(double)">add(double)</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Returns a <code>Complex</code> whose value is <code>(this + addend)</code>,
 with <code>addend</code> interpreted as a real number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Quaternion.html#add(org.apache.commons.math3.complex.Quaternion, org.apache.commons.math3.complex.Quaternion)">add(Quaternion, Quaternion)</a></span> - Static method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex">Quaternion</a></dt>
<dd>
<div class="block">Computes the sum of two quaternions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Quaternion.html#add(org.apache.commons.math3.complex.Quaternion)">add(Quaternion)</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex">Quaternion</a></dt>
<dd>
<div class="block">Computes the sum of the instance and another quaternion.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#add(org.apache.commons.math3.dfp.Dfp)">add(Dfp)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Add x to this.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#add(double)">add(double)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">'+' operator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/FieldElement.html#add(T)">add(T)</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/FieldElement.html" title="interface in org.apache.commons.math3">FieldElement</a></dt>
<dd>
<div class="block">Compute this + a.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/WeightedObservedPoints.html#add(double, double)">add(double, double)</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/WeightedObservedPoints.html" title="class in org.apache.commons.math3.fitting">WeightedObservedPoints</a></dt>
<dd>
<div class="block">Adds a point to the sample.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/WeightedObservedPoints.html#add(double, double, double)">add(double, double, double)</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/WeightedObservedPoints.html" title="class in org.apache.commons.math3.fitting">WeightedObservedPoints</a></dt>
<dd>
<div class="block">Adds a point to the sample.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/WeightedObservedPoints.html#add(org.apache.commons.math3.fitting.WeightedObservedPoint)">add(WeightedObservedPoint)</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/WeightedObservedPoints.html" title="class in org.apache.commons.math3.fitting">WeightedObservedPoints</a></dt>
<dd>
<div class="block">Adds a point to the sample.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#add(java.math.BigInteger)">add(BigInteger)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Adds the value of this fraction to the passed <a href="http://docs.oracle.com/javase/6/docs/api/java/math/BigInteger.html?is-external=true" title="class or interface in java.math"><code>BigInteger</code></a>,
 returning the result in reduced form.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#add(int)">add(int)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Adds the value of this fraction to the passed <tt>integer</tt>, returning
 the result in reduced form.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#add(long)">add(long)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Adds the value of this fraction to the passed <tt>long</tt>, returning
 the result in reduced form.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#add(org.apache.commons.math3.fraction.BigFraction)">add(BigFraction)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Adds the value of this fraction to another, returning the result in
 reduced form.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#add(org.apache.commons.math3.fraction.Fraction)">add(Fraction)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">Adds the value of this fraction to another, returning the result in reduced form.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#add(int)">add(int)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">Add an integer to the fraction.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#add(org.apache.commons.math3.geometry.Vector)">add(Vector&lt;Euclidean1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Add a vector to the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#add(double, org.apache.commons.math3.geometry.Vector)">add(double, Vector&lt;Euclidean1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Add a scaled vector to the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#add(org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">add(FieldVector3D&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Add a vector to the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#add(org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">add(Vector3D)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Add a vector to the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#add(T, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">add(T, FieldVector3D&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Add a scaled vector to the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#add(T, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">add(T, Vector3D)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Add a scaled vector to the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#add(double, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">add(double, FieldVector3D&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Add a scaled vector to the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#add(double, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">add(double, Vector3D)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Add a scaled vector to the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#add(org.apache.commons.math3.geometry.Vector)">add(Vector&lt;Euclidean3D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Add a vector to the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#add(double, org.apache.commons.math3.geometry.Vector)">add(double, Vector&lt;Euclidean3D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Add a scaled vector to the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#add(org.apache.commons.math3.geometry.Vector)">add(Vector&lt;Euclidean2D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Add a vector to the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#add(double, org.apache.commons.math3.geometry.Vector)">add(double, Vector&lt;Euclidean2D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Add a scaled vector to the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/Vector.html#add(org.apache.commons.math3.geometry.Vector)">add(Vector&lt;S&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/Vector.html" title="interface in org.apache.commons.math3.geometry">Vector</a></dt>
<dd>
<div class="block">Add a vector to the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/Vector.html#add(double, org.apache.commons.math3.geometry.Vector)">add(double, Vector&lt;S&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/Vector.html" title="interface in org.apache.commons.math3.geometry">Vector</a></dt>
<dd>
<div class="block">Add a scaled vector to the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#add(org.apache.commons.math3.linear.FieldMatrix)">add(FieldMatrix&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Compute the sum of this and m.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#add(org.apache.commons.math3.linear.RealMatrix)">add(RealMatrix)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Returns the sum of <code>this</code> and <code>m</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html#add(org.apache.commons.math3.linear.Array2DRowFieldMatrix)">add(Array2DRowFieldMatrix&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowFieldMatrix</a></dt>
<dd>
<div class="block">Add <code>m</code> to this matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html#add(org.apache.commons.math3.linear.Array2DRowRealMatrix)">add(Array2DRowRealMatrix)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowRealMatrix</a></dt>
<dd>
<div class="block">Compute the sum of <code>this</code> and <code>m</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#add(org.apache.commons.math3.linear.FieldVector)">add(FieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Compute the sum of <code>this</code> and <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#add(org.apache.commons.math3.linear.ArrayFieldVector)">add(ArrayFieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Compute the sum of <code>this</code> and <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#add(org.apache.commons.math3.linear.RealVector)">add(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Compute the sum of this vector and <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#add(org.apache.commons.math3.linear.FieldMatrix)">add(FieldMatrix&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Compute the sum of this and m.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#add(org.apache.commons.math3.linear.BlockFieldMatrix)">add(BlockFieldMatrix&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Compute the sum of <code>this</code> and <code>m</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#add(org.apache.commons.math3.linear.RealMatrix)">add(RealMatrix)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Returns the sum of <code>this</code> and <code>m</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#add(org.apache.commons.math3.linear.BlockRealMatrix)">add(BlockRealMatrix)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Compute the sum of this matrix and <code>m</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DiagonalMatrix.html#add(org.apache.commons.math3.linear.DiagonalMatrix)">add(DiagonalMatrix)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DiagonalMatrix.html" title="class in org.apache.commons.math3.linear">DiagonalMatrix</a></dt>
<dd>
<div class="block">Compute the sum of <code>this</code> and <code>m</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#add(org.apache.commons.math3.linear.FieldMatrix)">add(FieldMatrix&lt;T&gt;)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Compute the sum of this and m.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVector.html#add(org.apache.commons.math3.linear.FieldVector)">add(FieldVector&lt;T&gt;)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVector.html" title="interface in org.apache.commons.math3.linear">FieldVector</a></dt>
<dd>
<div class="block">Compute the sum of <code>this</code> and <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealMatrix.html#add(org.apache.commons.math3.linear.OpenMapRealMatrix)">add(OpenMapRealMatrix)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealMatrix.html" title="class in org.apache.commons.math3.linear">OpenMapRealMatrix</a></dt>
<dd>
<div class="block">Compute the sum of this matrix and <code>m</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#add(org.apache.commons.math3.linear.RealVector)">add(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Compute the sum of this vector and <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#add(org.apache.commons.math3.linear.OpenMapRealVector)">add(OpenMapRealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Optimized method to add two OpenMapRealVectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#add(org.apache.commons.math3.linear.RealMatrix)">add(RealMatrix)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Returns the sum of <code>this</code> and <code>m</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#add(org.apache.commons.math3.linear.RealVector)">add(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Compute the sum of this vector and <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#add(org.apache.commons.math3.linear.SparseFieldVector)">add(SparseFieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Optimized method to add sparse vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#add(org.apache.commons.math3.linear.FieldVector)">add(FieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Compute the sum of <code>this</code> and <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#add(double)">add(double)</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">'+' operator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#add(org.apache.commons.math3.util.BigReal)">add(BigReal)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dd>
<div class="block">Compute this + a.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#add(org.apache.commons.math3.util.Decimal64)">add(Decimal64)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Compute this + a.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#add(double)">add(double)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">'+' operator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ArithmeticUtils.html#addAndCheck(int, int)">addAndCheck(int, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ArithmeticUtils.html" title="class in org.apache.commons.math3.util">ArithmeticUtils</a></dt>
<dd>
<div class="block">Add two integers, checking for overflow.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ArithmeticUtils.html#addAndCheck(long, long)">addAndCheck(long, long)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ArithmeticUtils.html" title="class in org.apache.commons.math3.util">ArithmeticUtils</a></dt>
<dd>
<div class="block">Add two long integers, checking for overflow.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/ListPopulation.html#addChromosome(org.apache.commons.math3.genetics.Chromosome)">addChromosome(Chromosome)</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/ListPopulation.html" title="class in org.apache.commons.math3.genetics">ListPopulation</a></dt>
<dd>
<div class="block">Add the given chromosome to the population.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/Population.html#addChromosome(org.apache.commons.math3.genetics.Chromosome)">addChromosome(Chromosome)</a></span> - Method in interface org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/Population.html" title="interface in org.apache.commons.math3.genetics">Population</a></dt>
<dd>
<div class="block">Add the given chromosome to the population.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/ListPopulation.html#addChromosomes(java.util.Collection)">addChromosomes(Collection&lt;Chromosome&gt;)</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/ListPopulation.html" title="class in org.apache.commons.math3.genetics">ListPopulation</a></dt>
<dd>
<div class="block">Add a <a href="http://docs.oracle.com/javase/6/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util"><code>Collection</code></a> of chromosomes to this <a href="./org/apache/commons/math3/genetics/Population.html" title="interface in org.apache.commons.math3.genetics"><code>Population</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html#addData(double, double)">addData(double, double)</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html" title="class in org.apache.commons.math3.stat.regression">SimpleRegression</a></dt>
<dd>
<div class="block">Adds the observation (x,y) to the regression data set.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html#addData(double[][])">addData(double[][])</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html" title="class in org.apache.commons.math3.stat.regression">SimpleRegression</a></dt>
<dd>
<div class="block">Adds the observations represented by the elements in
 <code>data</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/DoubleArray.html#addElement(double)">addElement(double)</a></span> - Method in interface org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/DoubleArray.html" title="interface in org.apache.commons.math3.util">DoubleArray</a></dt>
<dd>
<div class="block">Adds an element to the end of this expandable array</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#addElement(double)">addElement(double)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block">Adds an element to the end of this expandable array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/DoubleArray.html#addElementRolling(double)">addElementRolling(double)</a></span> - Method in interface org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/DoubleArray.html" title="interface in org.apache.commons.math3.util">DoubleArray</a></dt>
<dd>
<div class="block">
 Adds an element to the end of the array and removes the first
 element in the array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#addElementRolling(double)">addElementRolling(double)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block">
 Adds an element to the end of the array and removes the first
 element in the array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/DoubleArray.html#addElements(double[])">addElements(double[])</a></span> - Method in interface org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/DoubleArray.html" title="interface in org.apache.commons.math3.util">DoubleArray</a></dt>
<dd>
<div class="block">Adds elements to the end of this expandable array</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#addElements(double[])">addElements(double[])</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block">Adds several element to the end of this expandable array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractIntegrator.html#addEventHandler(org.apache.commons.math3.ode.events.EventHandler, double, double, int)">addEventHandler(EventHandler, double, double, int)</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractIntegrator.html" title="class in org.apache.commons.math3.ode">AbstractIntegrator</a></dt>
<dd>
<div class="block">Add an event handler to the integrator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractIntegrator.html#addEventHandler(org.apache.commons.math3.ode.events.EventHandler, double, double, int, org.apache.commons.math3.analysis.solvers.UnivariateSolver)">addEventHandler(EventHandler, double, double, int, UnivariateSolver)</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractIntegrator.html" title="class in org.apache.commons.math3.ode">AbstractIntegrator</a></dt>
<dd>
<div class="block">Add an event handler to the integrator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/GraggBulirschStoerIntegrator.html#addEventHandler(org.apache.commons.math3.ode.events.EventHandler, double, double, int, org.apache.commons.math3.analysis.solvers.UnivariateSolver)">addEventHandler(EventHandler, double, double, int, UnivariateSolver)</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/GraggBulirschStoerIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">GraggBulirschStoerIntegrator</a></dt>
<dd>
<div class="block">Add an event handler to the integrator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ODEIntegrator.html#addEventHandler(org.apache.commons.math3.ode.events.EventHandler, double, double, int)">addEventHandler(EventHandler, double, double, int)</a></span> - Method in interface org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ODEIntegrator.html" title="interface in org.apache.commons.math3.ode">ODEIntegrator</a></dt>
<dd>
<div class="block">Add an event handler to the integrator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ODEIntegrator.html#addEventHandler(org.apache.commons.math3.ode.events.EventHandler, double, double, int, org.apache.commons.math3.analysis.solvers.UnivariateSolver)">addEventHandler(EventHandler, double, double, int, UnivariateSolver)</a></span> - Method in interface org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ODEIntegrator.html" title="interface in org.apache.commons.math3.ode">ODEIntegrator</a></dt>
<dd>
<div class="block">Add an event handler to the integrator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#addInPlace(org.apache.commons.math3.analysis.differentiation.SparseGradient)">addInPlace(SparseGradient)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Add in place.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/IterationManager.html#addIterationListener(org.apache.commons.math3.util.IterationListener)">addIterationListener(IterationListener)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/IterationManager.html" title="class in org.apache.commons.math3.util">IterationManager</a></dt>
<dd>
<div class="block">Attaches a listener to this manager.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#ADDITIVE_MODE">ADDITIVE_MODE</a></span> - Static variable in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1. Please use <a href="./org/apache/commons/math3/util/ResizableDoubleArray.ExpansionMode.html#ADDITIVE"><code>ResizableDoubleArray.ExpansionMode.ADDITIVE</code></a> instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/Network.html#addLink(org.apache.commons.math3.ml.neuralnet.Neuron, org.apache.commons.math3.ml.neuralnet.Neuron)">addLink(Neuron, Neuron)</a></span> - Method in class org.apache.commons.math3.ml.neuralnet.<a href="./org/apache/commons/math3/ml/neuralnet/Network.html" title="class in org.apache.commons.math3.ml.neuralnet">Network</a></dt>
<dd>
<div class="block">Adds a link from neuron <code>a</code> to neuron <code>b</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/util/ExceptionContext.html#addMessage(org.apache.commons.math3.exception.util.Localizable, java.lang.Object...)">addMessage(Localizable, Object...)</a></span> - Method in class org.apache.commons.math3.exception.util.<a href="./org/apache/commons/math3/exception/util/ExceptionContext.html" title="class in org.apache.commons.math3.exception.util">ExceptionContext</a></dt>
<dd>
<div class="block">Adds a message.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/MillerUpdatingRegression.html#addObservation(double[], double)">addObservation(double[], double)</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/MillerUpdatingRegression.html" title="class in org.apache.commons.math3.stat.regression">MillerUpdatingRegression</a></dt>
<dd>
<div class="block">Adds an observation to the regression model.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html#addObservation(double[], double)">addObservation(double[], double)</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html" title="class in org.apache.commons.math3.stat.regression">SimpleRegression</a></dt>
<dd>
<div class="block">Adds one observation to the regression model.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/UpdatingMultipleLinearRegression.html#addObservation(double[], double)">addObservation(double[], double)</a></span> - Method in interface org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/UpdatingMultipleLinearRegression.html" title="interface in org.apache.commons.math3.stat.regression">UpdatingMultipleLinearRegression</a></dt>
<dd>
<div class="block">Adds one observation to the regression model.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/MillerUpdatingRegression.html#addObservations(double[][], double[])">addObservations(double[][], double[])</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/MillerUpdatingRegression.html" title="class in org.apache.commons.math3.stat.regression">MillerUpdatingRegression</a></dt>
<dd>
<div class="block">Adds multiple observations to the model.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html#addObservations(double[][], double[])">addObservations(double[][], double[])</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html" title="class in org.apache.commons.math3.stat.regression">SimpleRegression</a></dt>
<dd>
<div class="block">Adds a series of observations to the regression model.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/UpdatingMultipleLinearRegression.html#addObservations(double[][], double[])">addObservations(double[][], double[])</a></span> - Method in interface org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/UpdatingMultipleLinearRegression.html" title="interface in org.apache.commons.math3.stat.regression">UpdatingMultipleLinearRegression</a></dt>
<dd>
<div class="block">Adds a series of observations to the regression model.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/CurveFitter.html#addObservedPoint(double, double)">addObservedPoint(double, double)</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/CurveFitter.html" title="class in org.apache.commons.math3.fitting">CurveFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Add an observed (x,y) point to the sample with unit weight.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/CurveFitter.html#addObservedPoint(double, double, double)">addObservedPoint(double, double, double)</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/CurveFitter.html" title="class in org.apache.commons.math3.fitting">CurveFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Add an observed weighted (x,y) point to the sample.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/CurveFitter.html#addObservedPoint(org.apache.commons.math3.fitting.WeightedObservedPoint)">addObservedPoint(WeightedObservedPoint)</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/CurveFitter.html" title="class in org.apache.commons.math3.fitting">CurveFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Add an observed weighted (x,y) point to the sample.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/fitting/CurveFitter.html#addObservedPoint(double, double)">addObservedPoint(double, double)</a></span> - Method in class org.apache.commons.math3.optimization.fitting.<a href="./org/apache/commons/math3/optimization/fitting/CurveFitter.html" title="class in org.apache.commons.math3.optimization.fitting">CurveFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Add an observed (x,y) point to the sample with unit weight.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/fitting/CurveFitter.html#addObservedPoint(double, double, double)">addObservedPoint(double, double, double)</a></span> - Method in class org.apache.commons.math3.optimization.fitting.<a href="./org/apache/commons/math3/optimization/fitting/CurveFitter.html" title="class in org.apache.commons.math3.optimization.fitting">CurveFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Add an observed weighted (x,y) point to the sample.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/fitting/CurveFitter.html#addObservedPoint(org.apache.commons.math3.optimization.fitting.WeightedObservedPoint)">addObservedPoint(WeightedObservedPoint)</a></span> - Method in class org.apache.commons.math3.optimization.fitting.<a href="./org/apache/commons/math3/optimization/fitting/CurveFitter.html" title="class in org.apache.commons.math3.optimization.fitting">CurveFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Add an observed weighted (x,y) point to the sample.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/JacobianMatrices.html#addParameterJacobianProvider(org.apache.commons.math3.ode.ParameterJacobianProvider)">addParameterJacobianProvider(ParameterJacobianProvider)</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/JacobianMatrices.html" title="class in org.apache.commons.math3.ode">JacobianMatrices</a></dt>
<dd>
<div class="block">Add a parameter Jacobian provider.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/Cluster.html#addPoint(T)">addPoint(T)</a></span> - Method in class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/Cluster.html" title="class in org.apache.commons.math3.ml.clustering">Cluster</a></dt>
<dd>
<div class="block">Add a point to this cluster.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/clustering/Cluster.html#addPoint(T)">addPoint(T)</a></span> - Method in class org.apache.commons.math3.stat.clustering.<a href="./org/apache/commons/math3/stat/clustering/Cluster.html" title="class in org.apache.commons.math3.stat.clustering">Cluster</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Add a point to this cluster.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/gauss/BaseRuleFactory.html#addRule(org.apache.commons.math3.util.Pair)">addRule(Pair&lt;T[], T[]&gt;)</a></span> - Method in class org.apache.commons.math3.analysis.integration.gauss.<a href="./org/apache/commons/math3/analysis/integration/gauss/BaseRuleFactory.html" title="class in org.apache.commons.math3.analysis.integration.gauss">BaseRuleFactory</a></dt>
<dd>
<div class="block">Stores a rule.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/FieldHermiteInterpolator.html#addSamplePoint(T, T[]...)">addSamplePoint(T, T[]...)</a></span> - Method in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/FieldHermiteInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">FieldHermiteInterpolator</a></dt>
<dd>
<div class="block">Add a sample point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/HermiteInterpolator.html#addSamplePoint(double, double[]...)">addSamplePoint(double, double[]...)</a></span> - Method in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/HermiteInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">HermiteInterpolator</a></dt>
<dd>
<div class="block">Add a sample point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html#addSecondaryEquations(org.apache.commons.math3.ode.SecondaryEquations)">addSecondaryEquations(SecondaryEquations)</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html" title="class in org.apache.commons.math3.ode">ExpandableStatefulODE</a></dt>
<dd>
<div class="block">Add a set of secondary equations to be integrated along with the primary set.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractIntegrator.html#addStepHandler(org.apache.commons.math3.ode.sampling.StepHandler)">addStepHandler(StepHandler)</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractIntegrator.html" title="class in org.apache.commons.math3.ode">AbstractIntegrator</a></dt>
<dd>
<div class="block">Add a step handler to this integrator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/GraggBulirschStoerIntegrator.html#addStepHandler(org.apache.commons.math3.ode.sampling.StepHandler)">addStepHandler(StepHandler)</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/GraggBulirschStoerIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">GraggBulirschStoerIntegrator</a></dt>
<dd>
<div class="block">Add a step handler to this integrator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ODEIntegrator.html#addStepHandler(org.apache.commons.math3.ode.sampling.StepHandler)">addStepHandler(StepHandler)</a></span> - Method in interface org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ODEIntegrator.html" title="interface in org.apache.commons.math3.ode">ODEIntegrator</a></dt>
<dd>
<div class="block">Add a step handler to this integrator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#addToEntry(int, int, T)">addToEntry(int, int, T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Change an entry in the specified row and column.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#addToEntry(int, int, double)">addToEntry(int, int, double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Adds (in place) the specified value to the specified entry of
 <code>this</code> matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html#addToEntry(int, int, T)">addToEntry(int, int, T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowFieldMatrix</a></dt>
<dd>
<div class="block">Change an entry in the specified row and column.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html#addToEntry(int, int, double)">addToEntry(int, int, double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowRealMatrix</a></dt>
<dd>
<div class="block">Adds (in place) the specified value to the specified entry of
 <code>this</code> matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#addToEntry(int, double)">addToEntry(int, double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Change an entry at the specified index.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#addToEntry(int, int, T)">addToEntry(int, int, T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Change an entry in the specified row and column.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#addToEntry(int, int, double)">addToEntry(int, int, double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Adds (in place) the specified value to the specified entry of
 <code>this</code> matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DiagonalMatrix.html#addToEntry(int, int, double)">addToEntry(int, int, double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DiagonalMatrix.html" title="class in org.apache.commons.math3.linear">DiagonalMatrix</a></dt>
<dd>
<div class="block">Adds (in place) the specified value to the specified entry of
 <code>this</code> matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#addToEntry(int, int, T)">addToEntry(int, int, T)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Change an entry in the specified row and column.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealMatrix.html#addToEntry(int, int, double)">addToEntry(int, int, double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealMatrix.html" title="class in org.apache.commons.math3.linear">OpenMapRealMatrix</a></dt>
<dd>
<div class="block">Adds (in place) the specified value to the specified entry of
 <code>this</code> matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#addToEntry(int, int, double)">addToEntry(int, int, double)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Adds (in place) the specified value to the specified entry of
 <code>this</code> matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#addToEntry(int, double)">addToEntry(int, double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Change an entry at the specified index.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldMatrix.html#addToEntry(int, int, T)">addToEntry(int, int, T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldMatrix.html" title="class in org.apache.commons.math3.linear">SparseFieldMatrix</a></dt>
<dd>
<div class="block">Change an entry in the specified row and column.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#addValue(double)">addValue(double)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Adds the value to the dataset.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#addValue(double[])">addValue(double[])</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">MultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Add an n-tuple to the data</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#addValue(double)">addValue(double)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">Add a value to the data</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html#addValue(double)">addValue(double)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedDescriptiveStatistics</a></dt>
<dd>
<div class="block">Adds the value to the dataset.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html#addValue(double[])">addValue(double[])</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedMultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Add an n-tuple to the data</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#addValue(double)">addValue(double)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">Add a value to the data</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#addValue(java.lang.Comparable)">addValue(Comparable&lt;?&gt;)</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Adds 1 to the frequency count for v.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#addValue(int)">addValue(int)</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Adds 1 to the frequency count for v.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#addValue(long)">addValue(long)</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Adds 1 to the frequency count for v.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#addValue(char)">addValue(char)</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Adds 1 to the frequency count for v.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.SparseEntryIterator.html#advance(org.apache.commons.math3.linear.RealVector.Entry)">advance(RealVector.Entry)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.SparseEntryIterator.html" title="class in org.apache.commons.math3.linear">RealVector.SparseEntryIterator</a></dt>
<dd>
<div class="block">Advance an entry up to the next nonzero one.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.Iterator.html#advance()">advance()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.Iterator.html" title="class in org.apache.commons.math3.util">OpenIntToDoubleHashMap.Iterator</a></dt>
<dd>
<div class="block">Advance iterator one step further.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.Iterator.html#advance()">advance()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.Iterator.html" title="class in org.apache.commons.math3.util">OpenIntToFieldHashMap.Iterator</a></dt>
<dd>
<div class="block">Advance iterator one step further.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html#aggregate(java.util.Collection)">aggregate(Collection&lt;SummaryStatistics&gt;)</a></span> - Static method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">AggregateSummaryStatistics</a></dt>
<dd>
<div class="block">Computes aggregate summary statistics.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive"><span class="strong">AggregateSummaryStatistics</span></a> - Class in <a href="./org/apache/commons/math3/stat/descriptive/package-summary.html">org.apache.commons.math3.stat.descriptive</a></dt>
<dd>
<div class="block">
 An aggregator for <code>SummaryStatistics</code> from several data sets or
 data set partitions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html#AggregateSummaryStatistics()">AggregateSummaryStatistics()</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">AggregateSummaryStatistics</a></dt>
<dd>
<div class="block">Initializes a new AggregateSummaryStatistics with default statistics
 implementations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html#AggregateSummaryStatistics(org.apache.commons.math3.stat.descriptive.SummaryStatistics)">AggregateSummaryStatistics(SummaryStatistics)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">AggregateSummaryStatistics</a></dt>
<dd>
<div class="block">Initializes a new AggregateSummaryStatistics with the specified statistics
 object as a prototype for contributing statistics and for the internal
 aggregate statistics.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html#AggregateSummaryStatistics(org.apache.commons.math3.stat.descriptive.SummaryStatistics, org.apache.commons.math3.stat.descriptive.SummaryStatistics)">AggregateSummaryStatistics(SummaryStatistics, SummaryStatistics)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">AggregateSummaryStatistics</a></dt>
<dd>
<div class="block">Initializes a new AggregateSummaryStatistics with the specified statistics
 object as a prototype for contributing statistics and for the internal
 aggregate statistics.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/interval/AgrestiCoullInterval.html" title="class in org.apache.commons.math3.stat.interval"><span class="strong">AgrestiCoullInterval</span></a> - Class in <a href="./org/apache/commons/math3/stat/interval/package-summary.html">org.apache.commons.math3.stat.interval</a></dt>
<dd>
<div class="block">Implements the Agresti-Coull method for creating a binomial proportion confidence interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/interval/AgrestiCoullInterval.html#AgrestiCoullInterval()">AgrestiCoullInterval()</a></span> - Constructor for class org.apache.commons.math3.stat.interval.<a href="./org/apache/commons/math3/stat/interval/AgrestiCoullInterval.html" title="class in org.apache.commons.math3.stat.interval">AgrestiCoullInterval</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/twod/hull/AklToussaintHeuristic.html" title="class in org.apache.commons.math3.geometry.euclidean.twod.hull"><span class="strong">AklToussaintHeuristic</span></a> - Class in <a href="./org/apache/commons/math3/geometry/euclidean/twod/hull/package-summary.html">org.apache.commons.math3.geometry.euclidean.twod.hull</a></dt>
<dd>
<div class="block">A simple heuristic to improve the performance of convex hull algorithms.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#align(int)">align(int)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Make our exp equal to the supplied one, this may cause rounding.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/solvers/AllowedSolution.html" title="enum in org.apache.commons.math3.analysis.solvers"><span class="strong">AllowedSolution</span></a> - Enum in <a href="./org/apache/commons/math3/analysis/solvers/package-summary.html">org.apache.commons.math3.analysis.solvers</a></dt>
<dd>
<div class="block">The kinds of solutions that a <a href="./org/apache/commons/math3/analysis/solvers/BracketedUnivariateSolver.html" title="interface in org.apache.commons.math3.analysis.solvers"><code>(bracketed univariate real) root-finding algorithm</code></a> may accept as solutions.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/inference/AlternativeHypothesis.html" title="enum in org.apache.commons.math3.stat.inference"><span class="strong">AlternativeHypothesis</span></a> - Enum in <a href="./org/apache/commons/math3/stat/inference/package-summary.html">org.apache.commons.math3.stat.inference</a></dt>
<dd>
<div class="block">Represents an alternative hypothesis for a hypothesis test.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#angle(org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">angle(FieldVector3D&lt;T&gt;, FieldVector3D&lt;T&gt;)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Compute the angular separation between two vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#angle(org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">angle(FieldVector3D&lt;T&gt;, Vector3D)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Compute the angular separation between two vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#angle(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">angle(Vector3D, FieldVector3D&lt;T&gt;)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Compute the angular separation between two vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#angle(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">angle(Vector3D, Vector3D)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Compute the angular separation between two vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#angle(org.apache.commons.math3.geometry.euclidean.twod.Vector2D, org.apache.commons.math3.geometry.euclidean.twod.Vector2D)">angle(Vector2D, Vector2D)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Compute the angular separation between two vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/OneWayAnova.html#anovaFValue(java.util.Collection)">anovaFValue(Collection&lt;double[]&gt;)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/OneWayAnova.html" title="class in org.apache.commons.math3.stat.inference">OneWayAnova</a></dt>
<dd>
<div class="block">Computes the ANOVA F-value for a collection of <code>double[]</code>
 arrays.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/OneWayAnova.html#anovaPValue(java.util.Collection)">anovaPValue(Collection&lt;double[]&gt;)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/OneWayAnova.html" title="class in org.apache.commons.math3.stat.inference">OneWayAnova</a></dt>
<dd>
<div class="block">Computes the ANOVA P-value for a collection of <code>double[]</code>
 arrays.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/OneWayAnova.html#anovaPValue(java.util.Collection, boolean)">anovaPValue(Collection&lt;SummaryStatistics&gt;, boolean)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/OneWayAnova.html" title="class in org.apache.commons.math3.stat.inference">OneWayAnova</a></dt>
<dd>
<div class="block">Computes the ANOVA P-value for a collection of <a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive"><code>SummaryStatistics</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/OneWayAnova.html#anovaTest(java.util.Collection, double)">anovaTest(Collection&lt;double[]&gt;, double)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/OneWayAnova.html" title="class in org.apache.commons.math3.stat.inference">OneWayAnova</a></dt>
<dd>
<div class="block">Performs an ANOVA test, evaluating the null hypothesis that there
 is no difference among the means of the data categories.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/AnyMatrix.html" title="interface in org.apache.commons.math3.linear"><span class="strong">AnyMatrix</span></a> - Interface in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Interface defining very basic matrix operations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#append(org.apache.commons.math3.linear.FieldVector)">append(FieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Construct a vector by appending a vector to this vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#append(org.apache.commons.math3.linear.ArrayFieldVector)">append(ArrayFieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Construct a vector by appending a vector to this vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#append(T)">append(T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Construct a vector by appending a T to this vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#append(org.apache.commons.math3.linear.RealVector)">append(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Construct a new vector by appending a vector to this vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#append(org.apache.commons.math3.linear.ArrayRealVector)">append(ArrayRealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Construct a vector by appending a vector to this vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#append(double)">append(double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Construct a new vector by appending a double to this vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVector.html#append(org.apache.commons.math3.linear.FieldVector)">append(FieldVector&lt;T&gt;)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVector.html" title="interface in org.apache.commons.math3.linear">FieldVector</a></dt>
<dd>
<div class="block">Construct a vector by appending a vector to this vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVector.html#append(T)">append(T)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVector.html" title="interface in org.apache.commons.math3.linear">FieldVector</a></dt>
<dd>
<div class="block">Construct a vector by appending a T to this vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#append(org.apache.commons.math3.linear.OpenMapRealVector)">append(OpenMapRealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Optimized method to append a OpenMapRealVector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#append(org.apache.commons.math3.linear.RealVector)">append(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Construct a new vector by appending a vector to this vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#append(double)">append(double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Construct a new vector by appending a double to this vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#append(org.apache.commons.math3.linear.RealVector)">append(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Construct a new vector by appending a vector to this vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#append(double)">append(double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Construct a new vector by appending a double to this vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#append(org.apache.commons.math3.linear.SparseFieldVector)">append(SparseFieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Construct a vector by appending a vector to this vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#append(org.apache.commons.math3.linear.FieldVector)">append(FieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Construct a vector by appending a vector to this vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#append(T)">append(T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Construct a vector by appending a T to this vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ContinuousOutputModel.html#append(org.apache.commons.math3.ode.ContinuousOutputModel)">append(ContinuousOutputModel)</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ContinuousOutputModel.html" title="class in org.apache.commons.math3.ode">ContinuousOutputModel</a></dt>
<dd>
<div class="block">Append another model at the end of the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/StorelessCovariance.html#append(org.apache.commons.math3.stat.correlation.StorelessCovariance)">append(StorelessCovariance)</a></span> - Method in class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/StorelessCovariance.html" title="class in org.apache.commons.math3.stat.correlation">StorelessCovariance</a></dt>
<dd>
<div class="block">Appends <code>sc</code> to this, effectively aggregating the computations in <code>sc</code>
 with this.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html#append(org.apache.commons.math3.stat.regression.SimpleRegression)">append(SimpleRegression)</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html" title="class in org.apache.commons.math3.stat.regression">SimpleRegression</a></dt>
<dd>
<div class="block">Appends data from another regression calculation to this one.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/Transform.html#apply(org.apache.commons.math3.geometry.Point)">apply(Point&lt;S&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/Transform.html" title="interface in org.apache.commons.math3.geometry.partitioning">Transform</a></dt>
<dd>
<div class="block">Transform a point of a space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/Transform.html#apply(org.apache.commons.math3.geometry.partitioning.Hyperplane)">apply(Hyperplane&lt;S&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/Transform.html" title="interface in org.apache.commons.math3.geometry.partitioning">Transform</a></dt>
<dd>
<div class="block">Transform an hyperplane of a space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/Transform.html#apply(org.apache.commons.math3.geometry.partitioning.SubHyperplane, org.apache.commons.math3.geometry.partitioning.Hyperplane, org.apache.commons.math3.geometry.partitioning.Hyperplane)">apply(SubHyperplane&lt;T&gt;, Hyperplane&lt;S&gt;, Hyperplane&lt;S&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/Transform.html" title="interface in org.apache.commons.math3.geometry.partitioning">Transform</a></dt>
<dd>
<div class="block">Transform a sub-hyperplane embedded in an hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#apply(org.apache.commons.math3.stat.descriptive.UnivariateStatistic)">apply(UnivariateStatistic)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Apply the given statistic to the data associated with this set of statistics.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html#apply(org.apache.commons.math3.stat.descriptive.UnivariateStatistic)">apply(UnivariateStatistic)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedDescriptiveStatistics</a></dt>
<dd>
<div class="block">Apply the given statistic to the data associated with this set of statistics.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html#applyInverseTo(org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">applyInverseTo(FieldVector3D&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldRotation</a></dt>
<dd>
<div class="block">Apply the inverse of the rotation to a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html#applyInverseTo(org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">applyInverseTo(Vector3D)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldRotation</a></dt>
<dd>
<div class="block">Apply the inverse of the rotation to a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html#applyInverseTo(T[], T[])">applyInverseTo(T[], T[])</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldRotation</a></dt>
<dd>
<div class="block">Apply the inverse of the rotation to a vector stored in an array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html#applyInverseTo(double[], T[])">applyInverseTo(double[], T[])</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldRotation</a></dt>
<dd>
<div class="block">Apply the inverse of the rotation to a vector stored in an array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html#applyInverseTo(org.apache.commons.math3.geometry.euclidean.threed.Rotation, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">applyInverseTo(Rotation, FieldVector3D&lt;T&gt;)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldRotation</a></dt>
<dd>
<div class="block">Apply the inverse of a rotation to a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html#applyInverseTo(org.apache.commons.math3.geometry.euclidean.threed.FieldRotation)">applyInverseTo(FieldRotation&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldRotation</a></dt>
<dd>
<div class="block">Apply the inverse of the instance to another rotation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html#applyInverseTo(org.apache.commons.math3.geometry.euclidean.threed.Rotation)">applyInverseTo(Rotation)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldRotation</a></dt>
<dd>
<div class="block">Apply the inverse of the instance to another rotation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html#applyInverseTo(org.apache.commons.math3.geometry.euclidean.threed.Rotation, org.apache.commons.math3.geometry.euclidean.threed.FieldRotation)">applyInverseTo(Rotation, FieldRotation&lt;T&gt;)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldRotation</a></dt>
<dd>
<div class="block">Apply the inverse of a rotation to another rotation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html#applyInverseTo(org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">applyInverseTo(Vector3D)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Rotation</a></dt>
<dd>
<div class="block">Apply the inverse of the rotation to a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html#applyInverseTo(double[], double[])">applyInverseTo(double[], double[])</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Rotation</a></dt>
<dd>
<div class="block">Apply the inverse of the rotation to a vector stored in an array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html#applyInverseTo(org.apache.commons.math3.geometry.euclidean.threed.Rotation)">applyInverseTo(Rotation)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Rotation</a></dt>
<dd>
<div class="block">Apply the inverse of the instance to another rotation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html#applyTo(org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">applyTo(FieldVector3D&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldRotation</a></dt>
<dd>
<div class="block">Apply the rotation to a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html#applyTo(org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">applyTo(Vector3D)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldRotation</a></dt>
<dd>
<div class="block">Apply the rotation to a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html#applyTo(T[], T[])">applyTo(T[], T[])</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldRotation</a></dt>
<dd>
<div class="block">Apply the rotation to a vector stored in an array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html#applyTo(double[], T[])">applyTo(double[], T[])</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldRotation</a></dt>
<dd>
<div class="block">Apply the rotation to a vector stored in an array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html#applyTo(org.apache.commons.math3.geometry.euclidean.threed.Rotation, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">applyTo(Rotation, FieldVector3D&lt;T&gt;)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldRotation</a></dt>
<dd>
<div class="block">Apply a rotation to a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html#applyTo(org.apache.commons.math3.geometry.euclidean.threed.FieldRotation)">applyTo(FieldRotation&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldRotation</a></dt>
<dd>
<div class="block">Apply the instance to another rotation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html#applyTo(org.apache.commons.math3.geometry.euclidean.threed.Rotation)">applyTo(Rotation)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldRotation</a></dt>
<dd>
<div class="block">Apply the instance to another rotation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html#applyTo(org.apache.commons.math3.geometry.euclidean.threed.Rotation, org.apache.commons.math3.geometry.euclidean.threed.FieldRotation)">applyTo(Rotation, FieldRotation&lt;T&gt;)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldRotation</a></dt>
<dd>
<div class="block">Apply a rotation to another rotation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html#applyTo(org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">applyTo(Vector3D)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Rotation</a></dt>
<dd>
<div class="block">Apply the rotation to a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html#applyTo(double[], double[])">applyTo(double[], double[])</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Rotation</a></dt>
<dd>
<div class="block">Apply the rotation to a vector stored in an array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html#applyTo(org.apache.commons.math3.geometry.euclidean.threed.Rotation)">applyTo(Rotation)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Rotation</a></dt>
<dd>
<div class="block">Apply the instance to another rotation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html#applyTransform(org.apache.commons.math3.geometry.partitioning.Transform)">applyTransform(Transform&lt;S, T&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractRegion</a></dt>
<dd>
<div class="block">Transform a region.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractSubHyperplane.html#applyTransform(org.apache.commons.math3.geometry.partitioning.Transform)">applyTransform(Transform&lt;S, T&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractSubHyperplane.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractSubHyperplane</a></dt>
<dd>
<div class="block">Apply a transform to the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html#approximateP(double, int, int)">approximateP(double, int, int)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html" title="class in org.apache.commons.math3.stat.inference">KolmogorovSmirnovTest</a></dt>
<dd>
<div class="block">Uses the Kolmogorov-Smirnov distribution to approximate \(P(D_{n,m} > d)\) where \(D_{n,m}\)
 is the 2-sample Kolmogorov-Smirnov statistic.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#approximateP(double, int, int)">approximateP(double, int, int)</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/geometry/spherical/oned/Arc.html" title="class in org.apache.commons.math3.geometry.spherical.oned"><span class="strong">Arc</span></a> - Class in <a href="./org/apache/commons/math3/geometry/spherical/oned/package-summary.html">org.apache.commons.math3.geometry.spherical.oned</a></dt>
<dd>
<div class="block">This class represents an arc on a circle.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/Arc.html#Arc(double, double, double)">Arc(double, double, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/Arc.html" title="class in org.apache.commons.math3.geometry.spherical.oned">Arc</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/spherical/oned/ArcsSet.html" title="class in org.apache.commons.math3.geometry.spherical.oned"><span class="strong">ArcsSet</span></a> - Class in <a href="./org/apache/commons/math3/geometry/spherical/oned/package-summary.html">org.apache.commons.math3.geometry.spherical.oned</a></dt>
<dd>
<div class="block">This class represents a region of a circle: a set of arcs.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/ArcsSet.html#ArcsSet(double)">ArcsSet(double)</a></span> - Constructor for class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/ArcsSet.html" title="class in org.apache.commons.math3.geometry.spherical.oned">ArcsSet</a></dt>
<dd>
<div class="block">Build an arcs set representing the whole circle.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/ArcsSet.html#ArcsSet(double, double, double)">ArcsSet(double, double, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/ArcsSet.html" title="class in org.apache.commons.math3.geometry.spherical.oned">ArcsSet</a></dt>
<dd>
<div class="block">Build an arcs set corresponding to a single arc.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/ArcsSet.html#ArcsSet(org.apache.commons.math3.geometry.partitioning.BSPTree, double)">ArcsSet(BSPTree&lt;Sphere1D&gt;, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/ArcsSet.html" title="class in org.apache.commons.math3.geometry.spherical.oned">ArcsSet</a></dt>
<dd>
<div class="block">Build an arcs set from an inside/outside BSP tree.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/ArcsSet.html#ArcsSet(java.util.Collection, double)">ArcsSet(Collection&lt;SubHyperplane&lt;Sphere1D&gt;&gt;, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/ArcsSet.html" title="class in org.apache.commons.math3.geometry.spherical.oned">ArcsSet</a></dt>
<dd>
<div class="block">Build an arcs set from a Boundary REPresentation (B-rep).</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/spherical/oned/ArcsSet.InconsistentStateAt2PiWrapping.html" title="class in org.apache.commons.math3.geometry.spherical.oned"><span class="strong">ArcsSet.InconsistentStateAt2PiWrapping</span></a> - Exception in <a href="./org/apache/commons/math3/geometry/spherical/oned/package-summary.html">org.apache.commons.math3.geometry.spherical.oned</a></dt>
<dd>
<div class="block">Specialized exception for inconsistent BSP tree state inconsistency.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/ArcsSet.InconsistentStateAt2PiWrapping.html#ArcsSet.InconsistentStateAt2PiWrapping()">ArcsSet.InconsistentStateAt2PiWrapping()</a></span> - Constructor for exception org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/ArcsSet.InconsistentStateAt2PiWrapping.html" title="class in org.apache.commons.math3.geometry.spherical.oned">ArcsSet.InconsistentStateAt2PiWrapping</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/spherical/oned/ArcsSet.Split.html" title="class in org.apache.commons.math3.geometry.spherical.oned"><span class="strong">ArcsSet.Split</span></a> - Class in <a href="./org/apache/commons/math3/geometry/spherical/oned/package-summary.html">org.apache.commons.math3.geometry.spherical.oned</a></dt>
<dd>
<div class="block">Class holding the results of the <a href="./org/apache/commons/math3/geometry/spherical/oned/ArcsSet.html#split(org.apache.commons.math3.geometry.spherical.oned.Arc)"><code>split</code></a> method.</div>
</dd>
<dt><a href="./org/apache/commons/math3/exception/util/ArgUtils.html" title="class in org.apache.commons.math3.exception.util"><span class="strong">ArgUtils</span></a> - Class in <a href="./org/apache/commons/math3/exception/util/package-summary.html">org.apache.commons.math3.exception.util</a></dt>
<dd>
<div class="block">Utility class for transforming the list of arguments passed to
 constructors of exceptions.</div>
</dd>
<dt><a href="./org/apache/commons/math3/util/ArithmeticUtils.html" title="class in org.apache.commons.math3.util"><span class="strong">ArithmeticUtils</span></a> - Class in <a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a></dt>
<dd>
<div class="block">Some useful, arithmetics related, additions to the built-in functions in
 <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Math.html?is-external=true" title="class or interface in java.lang"><code>Math</code></a>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="class in org.apache.commons.math3.linear"><span class="strong">Array2DRowFieldMatrix</span></a>&lt;<a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="type parameter in Array2DRowFieldMatrix">T</a> extends <a href="./org/apache/commons/math3/FieldElement.html" title="interface in org.apache.commons.math3">FieldElement</a>&lt;<a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="type parameter in Array2DRowFieldMatrix">T</a>&gt;&gt; - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Implementation of FieldMatrix<T> using a <a href="./org/apache/commons/math3/FieldElement.html" title="interface in org.apache.commons.math3"><code>FieldElement</code></a>[][] array to store entries.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html#Array2DRowFieldMatrix(org.apache.commons.math3.Field)">Array2DRowFieldMatrix(Field&lt;T&gt;)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowFieldMatrix</a></dt>
<dd>
<div class="block">Creates a matrix with no data</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html#Array2DRowFieldMatrix(org.apache.commons.math3.Field, int, int)">Array2DRowFieldMatrix(Field&lt;T&gt;, int, int)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowFieldMatrix</a></dt>
<dd>
<div class="block">Create a new <code>FieldMatrix&lt;T&gt;</code> with the supplied row and column dimensions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html#Array2DRowFieldMatrix(T[][])">Array2DRowFieldMatrix(T[][])</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowFieldMatrix</a></dt>
<dd>
<div class="block">Create a new <code>FieldMatrix&lt;T&gt;</code> using the input array as the underlying
 data array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html#Array2DRowFieldMatrix(org.apache.commons.math3.Field, T[][])">Array2DRowFieldMatrix(Field&lt;T&gt;, T[][])</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowFieldMatrix</a></dt>
<dd>
<div class="block">Create a new <code>FieldMatrix&lt;T&gt;</code> using the input array as the underlying
 data array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html#Array2DRowFieldMatrix(T[][], boolean)">Array2DRowFieldMatrix(T[][], boolean)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowFieldMatrix</a></dt>
<dd>
<div class="block">Create a new <code>FieldMatrix&lt;T&gt;</code> using the input array as the underlying
 data array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html#Array2DRowFieldMatrix(org.apache.commons.math3.Field, T[][], boolean)">Array2DRowFieldMatrix(Field&lt;T&gt;, T[][], boolean)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowFieldMatrix</a></dt>
<dd>
<div class="block">Create a new <code>FieldMatrix&lt;T&gt;</code> using the input array as the underlying
 data array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html#Array2DRowFieldMatrix(T[])">Array2DRowFieldMatrix(T[])</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowFieldMatrix</a></dt>
<dd>
<div class="block">Create a new (column) <code>FieldMatrix&lt;T&gt;</code> using <code>v</code> as the
 data for the unique column of the created matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html#Array2DRowFieldMatrix(org.apache.commons.math3.Field, T[])">Array2DRowFieldMatrix(Field&lt;T&gt;, T[])</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowFieldMatrix</a></dt>
<dd>
<div class="block">Create a new (column) <code>FieldMatrix&lt;T&gt;</code> using <code>v</code> as the
 data for the unique column of the created matrix.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html" title="class in org.apache.commons.math3.linear"><span class="strong">Array2DRowRealMatrix</span></a> - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Implementation of <a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear"><code>RealMatrix</code></a> using a <code>double[][]</code> array to
 store entries.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html#Array2DRowRealMatrix()">Array2DRowRealMatrix()</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowRealMatrix</a></dt>
<dd>
<div class="block">Creates a matrix with no data</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html#Array2DRowRealMatrix(int, int)">Array2DRowRealMatrix(int, int)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowRealMatrix</a></dt>
<dd>
<div class="block">Create a new RealMatrix with the supplied row and column dimensions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html#Array2DRowRealMatrix(double[][])">Array2DRowRealMatrix(double[][])</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowRealMatrix</a></dt>
<dd>
<div class="block">Create a new <code>RealMatrix</code> using the input array as the underlying
 data array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html#Array2DRowRealMatrix(double[][], boolean)">Array2DRowRealMatrix(double[][], boolean)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowRealMatrix</a></dt>
<dd>
<div class="block">Create a new RealMatrix using the input array as the underlying
 data array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html#Array2DRowRealMatrix(double[])">Array2DRowRealMatrix(double[])</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowRealMatrix</a></dt>
<dd>
<div class="block">Create a new (column) RealMatrix using <code>v</code> as the
 data for the unique column of the created matrix.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear"><span class="strong">ArrayFieldVector</span></a>&lt;<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="type parameter in ArrayFieldVector">T</a> extends <a href="./org/apache/commons/math3/FieldElement.html" title="interface in org.apache.commons.math3">FieldElement</a>&lt;<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="type parameter in ArrayFieldVector">T</a>&gt;&gt; - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">This class implements the <a href="./org/apache/commons/math3/linear/FieldVector.html" title="interface in org.apache.commons.math3.linear"><code>FieldVector</code></a> interface with a <a href="./org/apache/commons/math3/FieldElement.html" title="interface in org.apache.commons.math3"><code>FieldElement</code></a> array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#ArrayFieldVector(org.apache.commons.math3.Field)">ArrayFieldVector(Field&lt;T&gt;)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Build a 0-length vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#ArrayFieldVector(org.apache.commons.math3.Field, int)">ArrayFieldVector(Field&lt;T&gt;, int)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Construct a vector of zeroes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#ArrayFieldVector(int, T)">ArrayFieldVector(int, T)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Construct a vector with preset values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#ArrayFieldVector(T[])">ArrayFieldVector(T[])</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Construct a vector from an array, copying the input array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#ArrayFieldVector(org.apache.commons.math3.Field, T[])">ArrayFieldVector(Field&lt;T&gt;, T[])</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Construct a vector from an array, copying the input array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#ArrayFieldVector(T[], boolean)">ArrayFieldVector(T[], boolean)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Create a new ArrayFieldVector using the input array as the underlying
 data array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#ArrayFieldVector(org.apache.commons.math3.Field, T[], boolean)">ArrayFieldVector(Field&lt;T&gt;, T[], boolean)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Create a new ArrayFieldVector using the input array as the underlying
 data array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#ArrayFieldVector(T[], int, int)">ArrayFieldVector(T[], int, int)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Construct a vector from part of a array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#ArrayFieldVector(org.apache.commons.math3.Field, T[], int, int)">ArrayFieldVector(Field&lt;T&gt;, T[], int, int)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Construct a vector from part of a array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#ArrayFieldVector(org.apache.commons.math3.linear.FieldVector)">ArrayFieldVector(FieldVector&lt;T&gt;)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Construct a vector from another vector, using a deep copy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#ArrayFieldVector(org.apache.commons.math3.linear.ArrayFieldVector)">ArrayFieldVector(ArrayFieldVector&lt;T&gt;)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Construct a vector from another vector, using a deep copy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#ArrayFieldVector(org.apache.commons.math3.linear.ArrayFieldVector, boolean)">ArrayFieldVector(ArrayFieldVector&lt;T&gt;, boolean)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Construct a vector from another vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#ArrayFieldVector(org.apache.commons.math3.linear.ArrayFieldVector, org.apache.commons.math3.linear.ArrayFieldVector)">ArrayFieldVector(ArrayFieldVector&lt;T&gt;, ArrayFieldVector&lt;T&gt;)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.2, replaced by <a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#ArrayFieldVector(org.apache.commons.math3.linear.FieldVector, org.apache.commons.math3.linear.FieldVector)"><code>ArrayFieldVector.ArrayFieldVector(FieldVector, FieldVector)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#ArrayFieldVector(org.apache.commons.math3.linear.FieldVector, org.apache.commons.math3.linear.FieldVector)">ArrayFieldVector(FieldVector&lt;T&gt;, FieldVector&lt;T&gt;)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Construct a vector by appending one vector to another vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#ArrayFieldVector(org.apache.commons.math3.linear.ArrayFieldVector, T[])">ArrayFieldVector(ArrayFieldVector&lt;T&gt;, T[])</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.2, replaced by <a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#ArrayFieldVector(org.apache.commons.math3.linear.FieldVector, T[])"><code>ArrayFieldVector.ArrayFieldVector(FieldVector, FieldElement[])</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#ArrayFieldVector(org.apache.commons.math3.linear.FieldVector, T[])">ArrayFieldVector(FieldVector&lt;T&gt;, T[])</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Construct a vector by appending one vector to another vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#ArrayFieldVector(T[], org.apache.commons.math3.linear.ArrayFieldVector)">ArrayFieldVector(T[], ArrayFieldVector&lt;T&gt;)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.2, replaced by <a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#ArrayFieldVector(T[], org.apache.commons.math3.linear.FieldVector)"><code>ArrayFieldVector.ArrayFieldVector(FieldElement[], FieldVector)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#ArrayFieldVector(T[], org.apache.commons.math3.linear.FieldVector)">ArrayFieldVector(T[], FieldVector&lt;T&gt;)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Construct a vector by appending one vector to another vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#ArrayFieldVector(T[], T[])">ArrayFieldVector(T[], T[])</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Construct a vector by appending one vector to another vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#ArrayFieldVector(org.apache.commons.math3.Field, T[], T[])">ArrayFieldVector(Field&lt;T&gt;, T[], T[])</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Construct a vector by appending one vector to another vector.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear"><span class="strong">ArrayRealVector</span></a> - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">This class implements the <a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear"><code>RealVector</code></a> interface with a double array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#ArrayRealVector()">ArrayRealVector()</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Build a 0-length vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#ArrayRealVector(int)">ArrayRealVector(int)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Construct a vector of zeroes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#ArrayRealVector(int, double)">ArrayRealVector(int, double)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Construct a vector with preset values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#ArrayRealVector(double[])">ArrayRealVector(double[])</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Construct a vector from an array, copying the input array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#ArrayRealVector(double[], boolean)">ArrayRealVector(double[], boolean)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Create a new ArrayRealVector using the input array as the underlying
 data array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#ArrayRealVector(double[], int, int)">ArrayRealVector(double[], int, int)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Construct a vector from part of a array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#ArrayRealVector(java.lang.Double[])">ArrayRealVector(Double[])</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Construct a vector from an array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#ArrayRealVector(java.lang.Double[], int, int)">ArrayRealVector(Double[], int, int)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Construct a vector from part of an array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#ArrayRealVector(org.apache.commons.math3.linear.RealVector)">ArrayRealVector(RealVector)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Construct a vector from another vector, using a deep copy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#ArrayRealVector(org.apache.commons.math3.linear.ArrayRealVector)">ArrayRealVector(ArrayRealVector)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Construct a vector from another vector, using a deep copy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#ArrayRealVector(org.apache.commons.math3.linear.ArrayRealVector, boolean)">ArrayRealVector(ArrayRealVector, boolean)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Construct a vector from another vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#ArrayRealVector(org.apache.commons.math3.linear.ArrayRealVector, org.apache.commons.math3.linear.ArrayRealVector)">ArrayRealVector(ArrayRealVector, ArrayRealVector)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Construct a vector by appending one vector to another vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#ArrayRealVector(org.apache.commons.math3.linear.ArrayRealVector, org.apache.commons.math3.linear.RealVector)">ArrayRealVector(ArrayRealVector, RealVector)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Construct a vector by appending one vector to another vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#ArrayRealVector(org.apache.commons.math3.linear.RealVector, org.apache.commons.math3.linear.ArrayRealVector)">ArrayRealVector(RealVector, ArrayRealVector)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Construct a vector by appending one vector to another vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#ArrayRealVector(org.apache.commons.math3.linear.ArrayRealVector, double[])">ArrayRealVector(ArrayRealVector, double[])</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Construct a vector by appending one vector to another vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#ArrayRealVector(double[], org.apache.commons.math3.linear.ArrayRealVector)">ArrayRealVector(double[], ArrayRealVector)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Construct a vector by appending one vector to another vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#ArrayRealVector(double[], double[])">ArrayRealVector(double[], double[])</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Construct a vector by appending one vector to another vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#asin()">asin()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Arc sine operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#asin(double[], int, double[], int)">asin(double[], int, double[], int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Compute arc sine of a derivative structure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#asin()">asin()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Arc sine operation.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Asin.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Asin</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Arc-sine function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Asin.html#Asin()">Asin()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Asin.html" title="class in org.apache.commons.math3.analysis.function">Asin</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#asin()">asin()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Compute the
 <a href="http://mathworld.wolfram.com/InverseSine.html" TARGET="_top">
 inverse sine</a> of this complex number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#asin()">asin()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Arc sine operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpMath.html#asin(org.apache.commons.math3.dfp.Dfp)">asin(Dfp)</a></span> - Static method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpMath.html" title="class in org.apache.commons.math3.dfp">DfpMath</a></dt>
<dd>
<div class="block">computes the arc-sine of the argument.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#asin()">asin()</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Arc sine operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#asin()">asin()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Arc sine operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#asin(double)">asin(double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Compute the arc sine of a number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#asinh()">asinh()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Inverse hyperbolic sine operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#asinh(double[], int, double[], int)">asinh(double[], int, double[], int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Compute inverse hyperbolic sine of a derivative structure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#asinh()">asinh()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Inverse hyperbolic sine operation.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Asinh.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Asinh</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Hyperbolic arc-sine function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Asinh.html#Asinh()">Asinh()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Asinh.html" title="class in org.apache.commons.math3.analysis.function">Asinh</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#asinh()">asinh()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Inverse hyperbolic sine operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#asinh()">asinh()</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Inverse hyperbolic sine operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#asinh()">asinh()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Inverse hyperbolic sine operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#asinh(double)">asinh(double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Compute the inverse hyperbolic sine of a number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html#asList()">asList()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">IntervalsSet</a></dt>
<dd>
<div class="block">Build an ordered list of intervals representing the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/ArcsSet.html#asList()">asList()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/ArcsSet.html" title="class in org.apache.commons.math3.geometry.spherical.oned">ArcsSet</a></dt>
<dd>
<div class="block">Build an ordered list of arcs representing the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#atan()">atan()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Arc tangent operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#atan(double[], int, double[], int)">atan(double[], int, double[], int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Compute arc tangent of a derivative structure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#atan()">atan()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Arc tangent operation.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Atan.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Atan</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Arc-tangent function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Atan.html#Atan()">Atan()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Atan.html" title="class in org.apache.commons.math3.analysis.function">Atan</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#atan()">atan()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Compute the
 <a href="http://mathworld.wolfram.com/InverseTangent.html" TARGET="_top">
 inverse tangent</a> of this complex number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#atan()">atan()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Arc tangent operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpMath.html#atan(org.apache.commons.math3.dfp.Dfp)">atan(Dfp)</a></span> - Static method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpMath.html" title="class in org.apache.commons.math3.dfp">DfpMath</a></dt>
<dd>
<div class="block">computes the arc tangent of the argument

  Uses the typical taylor series

  but may reduce arguments using the following identity
 tan(x+y) = (tan(x) + tan(y)) / (1 - tan(x)*tan(y))

 since tan(PI/8) = sqrt(2)-1,

 atan(x) = atan( (x - sqrt(2) + 1) / (1+x*sqrt(2) - x) + PI/8.0</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#atan()">atan()</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Arc tangent operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#atan()">atan()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Arc tangent operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#atan(double)">atan(double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Arctangent function</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#atan2(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">atan2(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Two arguments arc tangent operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#atan2(org.apache.commons.math3.analysis.differentiation.DerivativeStructure, org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">atan2(DerivativeStructure, DerivativeStructure)</a></span> - Static method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Two arguments arc tangent operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#atan2(double[], int, double[], int, double[], int)">atan2(double[], int, double[], int, double[], int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Compute two arguments arc tangent of a derivative structure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#atan2(org.apache.commons.math3.analysis.differentiation.SparseGradient)">atan2(SparseGradient)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Two arguments arc tangent operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#atan2(org.apache.commons.math3.analysis.differentiation.SparseGradient, org.apache.commons.math3.analysis.differentiation.SparseGradient)">atan2(SparseGradient, SparseGradient)</a></span> - Static method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Two arguments arc tangent operation.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Atan2.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Atan2</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Arc-tangent function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Atan2.html#Atan2()">Atan2()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Atan2.html" title="class in org.apache.commons.math3.analysis.function">Atan2</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#atan2(org.apache.commons.math3.dfp.Dfp)">atan2(Dfp)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Two arguments arc tangent operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#atan2(T)">atan2(T)</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Two arguments arc tangent operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#atan2(org.apache.commons.math3.util.Decimal64)">atan2(Decimal64)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Two arguments arc tangent operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#atan2(double, double)">atan2(double, double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Two arguments arctangent function</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#atanh()">atanh()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Inverse hyperbolic  tangent operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#atanh(double[], int, double[], int)">atanh(double[], int, double[], int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Compute inverse hyperbolic tangent of a derivative structure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#atanh()">atanh()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Inverse hyperbolic  tangent operation.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Atanh.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Atanh</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Hyperbolic arc-tangent function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Atanh.html#Atanh()">Atanh()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Atanh.html" title="class in org.apache.commons.math3.analysis.function">Atanh</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#atanh()">atanh()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Inverse hyperbolic  tangent operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#atanh()">atanh()</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Inverse hyperbolic  tangent operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#atanh()">atanh()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Inverse hyperbolic  tangent operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#atanh(double)">atanh(double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Compute the inverse hyperbolic tangent of a number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpMath.html#atanInternal(org.apache.commons.math3.dfp.Dfp)">atanInternal(Dfp)</a></span> - Static method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpMath.html" title="class in org.apache.commons.math3.dfp">DfpMath</a></dt>
<dd>
<div class="block">computes the arc-tangent of the argument.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/partitioning/utilities/AVLTree.html" title="class in org.apache.commons.math3.geometry.partitioning.utilities"><span class="strong">AVLTree</span></a>&lt;<a href="./org/apache/commons/math3/geometry/partitioning/utilities/AVLTree.html" title="type parameter in AVLTree">T</a> extends <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;<a href="./org/apache/commons/math3/geometry/partitioning/utilities/AVLTree.html" title="type parameter in AVLTree">T</a>&gt;&gt; - Class in <a href="./org/apache/commons/math3/geometry/partitioning/utilities/package-summary.html">org.apache.commons.math3.geometry.partitioning.utilities</a></dt>
<dd>
<div class="block">This class implements AVL trees.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/utilities/AVLTree.html#AVLTree()">AVLTree()</a></span> - Constructor for class org.apache.commons.math3.geometry.partitioning.utilities.<a href="./org/apache/commons/math3/geometry/partitioning/utilities/AVLTree.html" title="class in org.apache.commons.math3.geometry.partitioning.utilities">AVLTree</a></dt>
<dd>
<div class="block">Build an empty tree.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/partitioning/utilities/AVLTree.Node.html" title="class in org.apache.commons.math3.geometry.partitioning.utilities"><span class="strong">AVLTree.Node</span></a> - Class in <a href="./org/apache/commons/math3/geometry/partitioning/utilities/package-summary.html">org.apache.commons.math3.geometry.partitioning.utilities</a></dt>
<dd>
<div class="block">This class implements AVL trees nodes.</div>
</dd>
</dl>
<a name="_B_">
<!--   -->
</a>
<h2 class="title">B</h2>
<dl>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/enclosing/SupportBallGenerator.html#ballOnSupport(java.util.List)">ballOnSupport(List&lt;P&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.enclosing.<a href="./org/apache/commons/math3/geometry/enclosing/SupportBallGenerator.html" title="interface in org.apache.commons.math3.geometry.enclosing">SupportBallGenerator</a></dt>
<dd>
<div class="block">Create a ball whose boundary lies on prescribed support points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/SphereGenerator.html#ballOnSupport(java.util.List)">ballOnSupport(List&lt;Vector3D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/SphereGenerator.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">SphereGenerator</a></dt>
<dd>
<div class="block">Create a ball whose boundary lies on prescribed support points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/DiskGenerator.html#ballOnSupport(java.util.List)">ballOnSupport(List&lt;Vector2D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/DiskGenerator.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">DiskGenerator</a></dt>
<dd>
<div class="block">Create a ball whose boundary lies on prescribed support points.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html" title="class in org.apache.commons.math3.optimization.direct"><span class="strong">BaseAbstractMultivariateOptimizer</span></a>&lt;<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html" title="type parameter in BaseAbstractMultivariateOptimizer">FUNC</a> extends <a href="./org/apache/commons/math3/analysis/MultivariateFunction.html" title="interface in org.apache.commons.math3.analysis">MultivariateFunction</a>&gt; - Class in <a href="./org/apache/commons/math3/optimization/direct/package-summary.html">org.apache.commons.math3.optimization.direct</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html#BaseAbstractMultivariateOptimizer()">BaseAbstractMultivariateOptimizer()</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>See <a href="./org/apache/commons/math3/optimization/SimpleValueChecker.html#SimpleValueChecker()"><code>SimpleValueChecker.SimpleValueChecker()</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html#BaseAbstractMultivariateOptimizer(org.apache.commons.math3.optimization.ConvergenceChecker)">BaseAbstractMultivariateOptimizer(ConvergenceChecker&lt;PointValuePair&gt;)</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateSimpleBoundsOptimizer.html" title="class in org.apache.commons.math3.optimization.direct"><span class="strong">BaseAbstractMultivariateSimpleBoundsOptimizer</span></a>&lt;<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateSimpleBoundsOptimizer.html" title="type parameter in BaseAbstractMultivariateSimpleBoundsOptimizer">FUNC</a> extends <a href="./org/apache/commons/math3/analysis/MultivariateFunction.html" title="interface in org.apache.commons.math3.analysis">MultivariateFunction</a>&gt; - Class in <a href="./org/apache/commons/math3/optimization/direct/package-summary.html">org.apache.commons.math3.optimization.direct</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateSimpleBoundsOptimizer.html#BaseAbstractMultivariateSimpleBoundsOptimizer()">BaseAbstractMultivariateSimpleBoundsOptimizer()</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateSimpleBoundsOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateSimpleBoundsOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>See <a href="./org/apache/commons/math3/optimization/SimpleValueChecker.html#SimpleValueChecker()"><code>SimpleValueChecker.SimpleValueChecker()</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateSimpleBoundsOptimizer.html#BaseAbstractMultivariateSimpleBoundsOptimizer(org.apache.commons.math3.optimization.ConvergenceChecker)">BaseAbstractMultivariateSimpleBoundsOptimizer(ConvergenceChecker&lt;PointValuePair&gt;)</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateSimpleBoundsOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateSimpleBoundsOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optimization.direct"><span class="strong">BaseAbstractMultivariateVectorOptimizer</span></a>&lt;<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html" title="type parameter in BaseAbstractMultivariateVectorOptimizer">FUNC</a> extends <a href="./org/apache/commons/math3/analysis/MultivariateVectorFunction.html" title="interface in org.apache.commons.math3.analysis">MultivariateVectorFunction</a>&gt; - Class in <a href="./org/apache/commons/math3/optimization/direct/package-summary.html">org.apache.commons.math3.optimization.direct</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html#BaseAbstractMultivariateVectorOptimizer()">BaseAbstractMultivariateVectorOptimizer()</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateVectorOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>See <a href="./org/apache/commons/math3/optimization/SimpleVectorValueChecker.html#SimpleVectorValueChecker()"><code>SimpleVectorValueChecker.SimpleVectorValueChecker()</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html#BaseAbstractMultivariateVectorOptimizer(org.apache.commons.math3.optimization.ConvergenceChecker)">BaseAbstractMultivariateVectorOptimizer(ConvergenceChecker&lt;PointVectorValuePair&gt;)</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateVectorOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html" title="class in org.apache.commons.math3.analysis.integration"><span class="strong">BaseAbstractUnivariateIntegrator</span></a> - Class in <a href="./org/apache/commons/math3/analysis/integration/package-summary.html">org.apache.commons.math3.analysis.integration</a></dt>
<dd>
<div class="block">Provide a default implementation for several generic functions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html#BaseAbstractUnivariateIntegrator(double, double, int, int)">BaseAbstractUnivariateIntegrator(double, double, int, int)</a></span> - Constructor for class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">BaseAbstractUnivariateIntegrator</a></dt>
<dd>
<div class="block">Construct an integrator with given accuracies and iteration counts.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html#BaseAbstractUnivariateIntegrator(double, double)">BaseAbstractUnivariateIntegrator(double, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">BaseAbstractUnivariateIntegrator</a></dt>
<dd>
<div class="block">Construct an integrator with given accuracies.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html#BaseAbstractUnivariateIntegrator(int, int)">BaseAbstractUnivariateIntegrator(int, int)</a></span> - Constructor for class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">BaseAbstractUnivariateIntegrator</a></dt>
<dd>
<div class="block">Construct an integrator with given iteration counts.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/univariate/BaseAbstractUnivariateOptimizer.html" title="class in org.apache.commons.math3.optimization.univariate"><span class="strong">BaseAbstractUnivariateOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optimization/univariate/package-summary.html">org.apache.commons.math3.optimization.univariate</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/BaseAbstractUnivariateOptimizer.html#BaseAbstractUnivariateOptimizer(org.apache.commons.math3.optimization.ConvergenceChecker)">BaseAbstractUnivariateOptimizer(ConvergenceChecker&lt;UnivariatePointValuePair&gt;)</a></span> - Constructor for class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/BaseAbstractUnivariateOptimizer.html" title="class in org.apache.commons.math3.optimization.univariate">BaseAbstractUnivariateOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html" title="class in org.apache.commons.math3.analysis.solvers"><span class="strong">BaseAbstractUnivariateSolver</span></a>&lt;<a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html" title="type parameter in BaseAbstractUnivariateSolver">FUNC</a> extends <a href="./org/apache/commons/math3/analysis/UnivariateFunction.html" title="interface in org.apache.commons.math3.analysis">UnivariateFunction</a>&gt; - Class in <a href="./org/apache/commons/math3/analysis/solvers/package-summary.html">org.apache.commons.math3.analysis.solvers</a></dt>
<dd>
<div class="block">Provide a default implementation for several functions useful to generic
 solvers.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html#BaseAbstractUnivariateSolver(double)">BaseAbstractUnivariateSolver(double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BaseAbstractUnivariateSolver</a></dt>
<dd>
<div class="block">Construct a solver with given absolute accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html#BaseAbstractUnivariateSolver(double, double)">BaseAbstractUnivariateSolver(double, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BaseAbstractUnivariateSolver</a></dt>
<dd>
<div class="block">Construct a solver with given accuracies.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html#BaseAbstractUnivariateSolver(double, double, double)">BaseAbstractUnivariateSolver(double, double, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BaseAbstractUnivariateSolver</a></dt>
<dd>
<div class="block">Construct a solver with given accuracies.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/BaseMultiStartMultivariateOptimizer.html" title="class in org.apache.commons.math3.optim"><span class="strong">BaseMultiStartMultivariateOptimizer</span></a>&lt;<a href="./org/apache/commons/math3/optim/BaseMultiStartMultivariateOptimizer.html" title="type parameter in BaseMultiStartMultivariateOptimizer">PAIR</a>&gt; - Class in <a href="./org/apache/commons/math3/optim/package-summary.html">org.apache.commons.math3.optim</a></dt>
<dd>
<div class="block">Base class multi-start optimizer for a multivariate function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/BaseMultiStartMultivariateOptimizer.html#BaseMultiStartMultivariateOptimizer(org.apache.commons.math3.optim.BaseMultivariateOptimizer, int, org.apache.commons.math3.random.RandomVectorGenerator)">BaseMultiStartMultivariateOptimizer(BaseMultivariateOptimizer&lt;PAIR&gt;, int, RandomVectorGenerator)</a></span> - Constructor for class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/BaseMultiStartMultivariateOptimizer.html" title="class in org.apache.commons.math3.optim">BaseMultiStartMultivariateOptimizer</a></dt>
<dd>
<div class="block">Create a multi-start optimizer from a single-start optimizer.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/BaseMultivariateMultiStartOptimizer.html" title="class in org.apache.commons.math3.optimization"><span class="strong">BaseMultivariateMultiStartOptimizer</span></a>&lt;<a href="./org/apache/commons/math3/optimization/BaseMultivariateMultiStartOptimizer.html" title="type parameter in BaseMultivariateMultiStartOptimizer">FUNC</a> extends <a href="./org/apache/commons/math3/analysis/MultivariateFunction.html" title="interface in org.apache.commons.math3.analysis">MultivariateFunction</a>&gt; - Class in <a href="./org/apache/commons/math3/optimization/package-summary.html">org.apache.commons.math3.optimization</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/BaseMultivariateMultiStartOptimizer.html#BaseMultivariateMultiStartOptimizer(org.apache.commons.math3.optimization.BaseMultivariateOptimizer, int, org.apache.commons.math3.random.RandomVectorGenerator)">BaseMultivariateMultiStartOptimizer(BaseMultivariateOptimizer&lt;FUNC&gt;, int, RandomVectorGenerator)</a></span> - Constructor for class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/BaseMultivariateMultiStartOptimizer.html" title="class in org.apache.commons.math3.optimization">BaseMultivariateMultiStartOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Create a multi-start optimizer from a single-start optimizer.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/BaseMultivariateOptimizer.html" title="class in org.apache.commons.math3.optim"><span class="strong">BaseMultivariateOptimizer</span></a>&lt;<a href="./org/apache/commons/math3/optim/BaseMultivariateOptimizer.html" title="type parameter in BaseMultivariateOptimizer">PAIR</a>&gt; - Class in <a href="./org/apache/commons/math3/optim/package-summary.html">org.apache.commons.math3.optim</a></dt>
<dd>
<div class="block">Base class for implementing optimizers for multivariate functions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/BaseMultivariateOptimizer.html#BaseMultivariateOptimizer(org.apache.commons.math3.optim.ConvergenceChecker)">BaseMultivariateOptimizer(ConvergenceChecker&lt;PAIR&gt;)</a></span> - Constructor for class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/BaseMultivariateOptimizer.html" title="class in org.apache.commons.math3.optim">BaseMultivariateOptimizer</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optimization/BaseMultivariateOptimizer.html" title="interface in org.apache.commons.math3.optimization"><span class="strong">BaseMultivariateOptimizer</span></a>&lt;<a href="./org/apache/commons/math3/optimization/BaseMultivariateOptimizer.html" title="type parameter in BaseMultivariateOptimizer">FUNC</a> extends <a href="./org/apache/commons/math3/analysis/MultivariateFunction.html" title="interface in org.apache.commons.math3.analysis">MultivariateFunction</a>&gt; - Interface in <a href="./org/apache/commons/math3/optimization/package-summary.html">org.apache.commons.math3.optimization</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/BaseMultivariateSimpleBoundsOptimizer.html" title="interface in org.apache.commons.math3.optimization"><span class="strong">BaseMultivariateSimpleBoundsOptimizer</span></a>&lt;<a href="./org/apache/commons/math3/optimization/BaseMultivariateSimpleBoundsOptimizer.html" title="type parameter in BaseMultivariateSimpleBoundsOptimizer">FUNC</a> extends <a href="./org/apache/commons/math3/analysis/MultivariateFunction.html" title="interface in org.apache.commons.math3.analysis">MultivariateFunction</a>&gt; - Interface in <a href="./org/apache/commons/math3/optimization/package-summary.html">org.apache.commons.math3.optimization</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/BaseMultivariateVectorMultiStartOptimizer.html" title="class in org.apache.commons.math3.optimization"><span class="strong">BaseMultivariateVectorMultiStartOptimizer</span></a>&lt;<a href="./org/apache/commons/math3/optimization/BaseMultivariateVectorMultiStartOptimizer.html" title="type parameter in BaseMultivariateVectorMultiStartOptimizer">FUNC</a> extends <a href="./org/apache/commons/math3/analysis/MultivariateVectorFunction.html" title="interface in org.apache.commons.math3.analysis">MultivariateVectorFunction</a>&gt; - Class in <a href="./org/apache/commons/math3/optimization/package-summary.html">org.apache.commons.math3.optimization</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/BaseMultivariateVectorMultiStartOptimizer.html#BaseMultivariateVectorMultiStartOptimizer(org.apache.commons.math3.optimization.BaseMultivariateVectorOptimizer, int, org.apache.commons.math3.random.RandomVectorGenerator)">BaseMultivariateVectorMultiStartOptimizer(BaseMultivariateVectorOptimizer&lt;FUNC&gt;, int, RandomVectorGenerator)</a></span> - Constructor for class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/BaseMultivariateVectorMultiStartOptimizer.html" title="class in org.apache.commons.math3.optimization">BaseMultivariateVectorMultiStartOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Create a multi-start optimizer from a single-start optimizer.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/BaseMultivariateVectorOptimizer.html" title="interface in org.apache.commons.math3.optimization"><span class="strong">BaseMultivariateVectorOptimizer</span></a>&lt;<a href="./org/apache/commons/math3/optimization/BaseMultivariateVectorOptimizer.html" title="type parameter in BaseMultivariateVectorOptimizer">FUNC</a> extends <a href="./org/apache/commons/math3/analysis/MultivariateVectorFunction.html" title="interface in org.apache.commons.math3.analysis">MultivariateVectorFunction</a>&gt; - Interface in <a href="./org/apache/commons/math3/optimization/package-summary.html">org.apache.commons.math3.optimization</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/BaseOptimizer.html" title="class in org.apache.commons.math3.optim"><span class="strong">BaseOptimizer</span></a>&lt;<a href="./org/apache/commons/math3/optim/BaseOptimizer.html" title="type parameter in BaseOptimizer">PAIR</a>&gt; - Class in <a href="./org/apache/commons/math3/optim/package-summary.html">org.apache.commons.math3.optim</a></dt>
<dd>
<div class="block">Base class for implementing optimizers.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/BaseOptimizer.html#BaseOptimizer(org.apache.commons.math3.optim.ConvergenceChecker)">BaseOptimizer(ConvergenceChecker&lt;PAIR&gt;)</a></span> - Constructor for class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/BaseOptimizer.html" title="class in org.apache.commons.math3.optim">BaseOptimizer</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/BaseOptimizer.html#BaseOptimizer(org.apache.commons.math3.optim.ConvergenceChecker, int, int)">BaseOptimizer(ConvergenceChecker&lt;PAIR&gt;, int, int)</a></span> - Constructor for class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/BaseOptimizer.html" title="class in org.apache.commons.math3.optim">BaseOptimizer</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optimization/BaseOptimizer.html" title="interface in org.apache.commons.math3.optimization"><span class="strong">BaseOptimizer</span></a>&lt;<a href="./org/apache/commons/math3/optimization/BaseOptimizer.html" title="type parameter in BaseOptimizer">PAIR</a>&gt; - Interface in <a href="./org/apache/commons/math3/optimization/package-summary.html">org.apache.commons.math3.optimization</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/integration/gauss/BaseRuleFactory.html" title="class in org.apache.commons.math3.analysis.integration.gauss"><span class="strong">BaseRuleFactory</span></a>&lt;<a href="./org/apache/commons/math3/analysis/integration/gauss/BaseRuleFactory.html" title="type parameter in BaseRuleFactory">T</a> extends <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang">Number</a>&gt; - Class in <a href="./org/apache/commons/math3/analysis/integration/gauss/package-summary.html">org.apache.commons.math3.analysis.integration.gauss</a></dt>
<dd>
<div class="block">Base class for rules that determines the integration nodes and their
 weights.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/gauss/BaseRuleFactory.html#BaseRuleFactory()">BaseRuleFactory()</a></span> - Constructor for class org.apache.commons.math3.analysis.integration.gauss.<a href="./org/apache/commons/math3/analysis/integration/gauss/BaseRuleFactory.html" title="class in org.apache.commons.math3.analysis.integration.gauss">BaseRuleFactory</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/analysis/solvers/BaseSecantSolver.html" title="class in org.apache.commons.math3.analysis.solvers"><span class="strong">BaseSecantSolver</span></a> - Class in <a href="./org/apache/commons/math3/analysis/solvers/package-summary.html">org.apache.commons.math3.analysis.solvers</a></dt>
<dd>
<div class="block">Base class for all bracketing <em>Secant</em>-based methods for root-finding
 (approximating a zero of a univariate real function).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseSecantSolver.html#BaseSecantSolver(double, org.apache.commons.math3.analysis.solvers.BaseSecantSolver.Method)">BaseSecantSolver(double, BaseSecantSolver.Method)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseSecantSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BaseSecantSolver</a></dt>
<dd>
<div class="block">Construct a solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseSecantSolver.html#BaseSecantSolver(double, double, org.apache.commons.math3.analysis.solvers.BaseSecantSolver.Method)">BaseSecantSolver(double, double, BaseSecantSolver.Method)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseSecantSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BaseSecantSolver</a></dt>
<dd>
<div class="block">Construct a solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseSecantSolver.html#BaseSecantSolver(double, double, double, org.apache.commons.math3.analysis.solvers.BaseSecantSolver.Method)">BaseSecantSolver(double, double, double, BaseSecantSolver.Method)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseSecantSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BaseSecantSolver</a></dt>
<dd>
<div class="block">Construct a solver.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/solvers/BaseSecantSolver.Method.html" title="enum in org.apache.commons.math3.analysis.solvers"><span class="strong">BaseSecantSolver.Method</span></a> - Enum in <a href="./org/apache/commons/math3/analysis/solvers/package-summary.html">org.apache.commons.math3.analysis.solvers</a></dt>
<dd>
<div class="block"><em>Secant</em>-based root-finding methods.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/univariate/BaseUnivariateOptimizer.html" title="interface in org.apache.commons.math3.optimization.univariate"><span class="strong">BaseUnivariateOptimizer</span></a>&lt;<a href="./org/apache/commons/math3/optimization/univariate/BaseUnivariateOptimizer.html" title="type parameter in BaseUnivariateOptimizer">FUNC</a> extends <a href="./org/apache/commons/math3/analysis/UnivariateFunction.html" title="interface in org.apache.commons.math3.analysis">UnivariateFunction</a>&gt; - Interface in <a href="./org/apache/commons/math3/optimization/univariate/package-summary.html">org.apache.commons.math3.optimization.univariate</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/solvers/BaseUnivariateSolver.html" title="interface in org.apache.commons.math3.analysis.solvers"><span class="strong">BaseUnivariateSolver</span></a>&lt;<a href="./org/apache/commons/math3/analysis/solvers/BaseUnivariateSolver.html" title="type parameter in BaseUnivariateSolver">FUNC</a> extends <a href="./org/apache/commons/math3/analysis/UnivariateFunction.html" title="interface in org.apache.commons.math3.analysis">UnivariateFunction</a>&gt; - Interface in <a href="./org/apache/commons/math3/analysis/solvers/package-summary.html">org.apache.commons.math3.analysis.solvers</a></dt>
<dd>
<div class="block">Interface for (univariate real) rootfinding algorithms.</div>
</dd>
<dt><a href="./org/apache/commons/math3/special/Beta.html" title="class in org.apache.commons.math3.special"><span class="strong">Beta</span></a> - Class in <a href="./org/apache/commons/math3/special/package-summary.html">org.apache.commons.math3.special</a></dt>
<dd>
<div class="block">
 This is a utility class that provides computation methods related to the
 Beta family of functions.</div>
</dd>
<dt><a href="./org/apache/commons/math3/distribution/BetaDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">BetaDistribution</span></a> - Class in <a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a></dt>
<dd>
<div class="block">Implements the Beta distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/BetaDistribution.html#BetaDistribution(double, double)">BetaDistribution(double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/BetaDistribution.html" title="class in org.apache.commons.math3.distribution">BetaDistribution</a></dt>
<dd>
<div class="block">Build a new instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/BetaDistribution.html#BetaDistribution(double, double, double)">BetaDistribution(double, double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/BetaDistribution.html" title="class in org.apache.commons.math3.distribution">BetaDistribution</a></dt>
<dd>
<div class="block">Build a new instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/BetaDistribution.html#BetaDistribution(org.apache.commons.math3.random.RandomGenerator, double, double)">BetaDistribution(RandomGenerator, double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/BetaDistribution.html" title="class in org.apache.commons.math3.distribution">BetaDistribution</a></dt>
<dd>
<div class="block">Creates a &beta; distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/BetaDistribution.html#BetaDistribution(org.apache.commons.math3.random.RandomGenerator, double, double, double)">BetaDistribution(RandomGenerator, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/BetaDistribution.html" title="class in org.apache.commons.math3.distribution">BetaDistribution</a></dt>
<dd>
<div class="block">Creates a &beta; distribution.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/interpolation/BicubicSplineInterpolatingFunction.html" title="class in org.apache.commons.math3.analysis.interpolation"><span class="strong">BicubicSplineInterpolatingFunction</span></a> - Class in <a href="./org/apache/commons/math3/analysis/interpolation/package-summary.html">org.apache.commons.math3.analysis.interpolation</a></dt>
<dd>
<div class="block">Function that implements the
 <a href="http://en.wikipedia.org/wiki/Bicubic_interpolation">
 bicubic spline interpolation</a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/BicubicSplineInterpolatingFunction.html#BicubicSplineInterpolatingFunction(double[], double[], double[][], double[][], double[][], double[][])">BicubicSplineInterpolatingFunction(double[], double[], double[][], double[][], double[][], double[][])</a></span> - Constructor for class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/BicubicSplineInterpolatingFunction.html" title="class in org.apache.commons.math3.analysis.interpolation">BicubicSplineInterpolatingFunction</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/analysis/interpolation/BicubicSplineInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation"><span class="strong">BicubicSplineInterpolator</span></a> - Class in <a href="./org/apache/commons/math3/analysis/interpolation/package-summary.html">org.apache.commons.math3.analysis.interpolation</a></dt>
<dd>
<div class="block">Generates a bicubic interpolating function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/BicubicSplineInterpolator.html#BicubicSplineInterpolator()">BicubicSplineInterpolator()</a></span> - Constructor for class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/BicubicSplineInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">BicubicSplineInterpolator</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#bigDecimalValue()">bigDecimalValue()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Gets the fraction as a <code>BigDecimal</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#bigDecimalValue(int)">bigDecimalValue(int)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Gets the fraction as a <code>BigDecimal</code> following the passed
 rounding mode.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#bigDecimalValue(int, int)">bigDecimalValue(int, int)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Gets the fraction as a <code>BigDecimal</code> following the passed scale
 and rounding mode.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#bigDecimalValue()">bigDecimalValue()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dd>
<div class="block">Get the BigDecimal value corresponding to the instance.</div>
</dd>
<dt><a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction"><span class="strong">BigFraction</span></a> - Class in <a href="./org/apache/commons/math3/fraction/package-summary.html">org.apache.commons.math3.fraction</a></dt>
<dd>
<div class="block">Representation of a rational number without any overflow.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#BigFraction(java.math.BigInteger)">BigFraction(BigInteger)</a></span> - Constructor for class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Create a <a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction"><code>BigFraction</code></a> equivalent to the passed <tt>BigInteger</tt>, ie
 "num / 1".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#BigFraction(java.math.BigInteger, java.math.BigInteger)">BigFraction(BigInteger, BigInteger)</a></span> - Constructor for class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">Create a <a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction"><code>BigFraction</code></a> given the numerator and denominator as
 <code>BigInteger</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#BigFraction(double)">BigFraction(double)</a></span> - Constructor for class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">Create a fraction given the double value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#BigFraction(double, double, int)">BigFraction(double, double, int)</a></span> - Constructor for class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">Create a fraction given the double value and maximum error allowed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#BigFraction(double, int)">BigFraction(double, int)</a></span> - Constructor for class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">Create a fraction given the double value and maximum denominator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#BigFraction(int)">BigFraction(int)</a></span> - Constructor for class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Create a <a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction"><code>BigFraction</code></a> equivalent to the passed <tt>int</tt>, ie
 "num / 1".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#BigFraction(int, int)">BigFraction(int, int)</a></span> - Constructor for class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Create a <a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction"><code>BigFraction</code></a> given the numerator and denominator as simple
 <tt>int</tt>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#BigFraction(long)">BigFraction(long)</a></span> - Constructor for class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Create a <a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction"><code>BigFraction</code></a> equivalent to the passed long, ie "num / 1".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#BigFraction(long, long)">BigFraction(long, long)</a></span> - Constructor for class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Create a <a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction"><code>BigFraction</code></a> given the numerator and denominator as simple
 <tt>long</tt>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/fraction/BigFractionField.html" title="class in org.apache.commons.math3.fraction"><span class="strong">BigFractionField</span></a> - Class in <a href="./org/apache/commons/math3/fraction/package-summary.html">org.apache.commons.math3.fraction</a></dt>
<dd>
<div class="block">Representation of the fractional numbers  without any overflow field.</div>
</dd>
<dt><a href="./org/apache/commons/math3/fraction/BigFractionFormat.html" title="class in org.apache.commons.math3.fraction"><span class="strong">BigFractionFormat</span></a> - Class in <a href="./org/apache/commons/math3/fraction/package-summary.html">org.apache.commons.math3.fraction</a></dt>
<dd>
<div class="block">Formats a BigFraction number in proper format or improper format.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFractionFormat.html#BigFractionFormat()">BigFractionFormat()</a></span> - Constructor for class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFractionFormat.html" title="class in org.apache.commons.math3.fraction">BigFractionFormat</a></dt>
<dd>
<div class="block">Create an improper formatting instance with the default number format
 for the numerator and denominator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFractionFormat.html#BigFractionFormat(java.text.NumberFormat)">BigFractionFormat(NumberFormat)</a></span> - Constructor for class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFractionFormat.html" title="class in org.apache.commons.math3.fraction">BigFractionFormat</a></dt>
<dd>
<div class="block">Create an improper formatting instance with a custom number format for
 both the numerator and denominator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFractionFormat.html#BigFractionFormat(java.text.NumberFormat, java.text.NumberFormat)">BigFractionFormat(NumberFormat, NumberFormat)</a></span> - Constructor for class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFractionFormat.html" title="class in org.apache.commons.math3.fraction">BigFractionFormat</a></dt>
<dd>
<div class="block">Create an improper formatting instance with a custom number format for
 the numerator and a custom number format for the denominator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#bigFractionMatrixToRealMatrix(org.apache.commons.math3.linear.FieldMatrix)">bigFractionMatrixToRealMatrix(FieldMatrix&lt;BigFraction&gt;)</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Convert a <a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear"><code>FieldMatrix</code></a>/<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction"><code>BigFraction</code></a> matrix to a <a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear"><code>RealMatrix</code></a>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util"><span class="strong">BigReal</span></a> - Class in <a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a></dt>
<dd>
<div class="block">Arbitrary precision decimal number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#BigReal(java.math.BigDecimal)">BigReal(BigDecimal)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dd>
<div class="block">Build an instance from a BigDecimal.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#BigReal(java.math.BigInteger)">BigReal(BigInteger)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dd>
<div class="block">Build an instance from a BigInteger.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#BigReal(java.math.BigInteger, int)">BigReal(BigInteger, int)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dd>
<div class="block">Build an instance from an unscaled BigInteger.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#BigReal(java.math.BigInteger, int, java.math.MathContext)">BigReal(BigInteger, int, MathContext)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dd>
<div class="block">Build an instance from an unscaled BigInteger.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#BigReal(java.math.BigInteger, java.math.MathContext)">BigReal(BigInteger, MathContext)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dd>
<div class="block">Build an instance from a BigInteger.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#BigReal(char[])">BigReal(char[])</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dd>
<div class="block">Build an instance from a characters representation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#BigReal(char[], int, int)">BigReal(char[], int, int)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dd>
<div class="block">Build an instance from a characters representation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#BigReal(char[], int, int, java.math.MathContext)">BigReal(char[], int, int, MathContext)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dd>
<div class="block">Build an instance from a characters representation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#BigReal(char[], java.math.MathContext)">BigReal(char[], MathContext)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dd>
<div class="block">Build an instance from a characters representation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#BigReal(double)">BigReal(double)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dd>
<div class="block">Build an instance from a double.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#BigReal(double, java.math.MathContext)">BigReal(double, MathContext)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dd>
<div class="block">Build an instance from a double.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#BigReal(int)">BigReal(int)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dd>
<div class="block">Build an instance from an int.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#BigReal(int, java.math.MathContext)">BigReal(int, MathContext)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dd>
<div class="block">Build an instance from an int.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#BigReal(long)">BigReal(long)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dd>
<div class="block">Build an instance from a long.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#BigReal(long, java.math.MathContext)">BigReal(long, MathContext)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dd>
<div class="block">Build an instance from a long.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#BigReal(java.lang.String)">BigReal(String)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dd>
<div class="block">Build an instance from a String representation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#BigReal(java.lang.String, java.math.MathContext)">BigReal(String, MathContext)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dd>
<div class="block">Build an instance from a String representation.</div>
</dd>
<dt><a href="./org/apache/commons/math3/util/BigRealField.html" title="class in org.apache.commons.math3.util"><span class="strong">BigRealField</span></a> - Class in <a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a></dt>
<dd>
<div class="block">Representation of real numbers with arbitrary precision field.</div>
</dd>
<dt><a href="./org/apache/commons/math3/genetics/BinaryChromosome.html" title="class in org.apache.commons.math3.genetics"><span class="strong">BinaryChromosome</span></a> - Class in <a href="./org/apache/commons/math3/genetics/package-summary.html">org.apache.commons.math3.genetics</a></dt>
<dd>
<div class="block">Chromosome represented by a vector of 0s and 1s.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/BinaryChromosome.html#BinaryChromosome(java.util.List)">BinaryChromosome(List&lt;Integer&gt;)</a></span> - Constructor for class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/BinaryChromosome.html" title="class in org.apache.commons.math3.genetics">BinaryChromosome</a></dt>
<dd>
<div class="block">Constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/BinaryChromosome.html#BinaryChromosome(java.lang.Integer[])">BinaryChromosome(Integer[])</a></span> - Constructor for class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/BinaryChromosome.html" title="class in org.apache.commons.math3.genetics">BinaryChromosome</a></dt>
<dd>
<div class="block">Constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/genetics/BinaryMutation.html" title="class in org.apache.commons.math3.genetics"><span class="strong">BinaryMutation</span></a> - Class in <a href="./org/apache/commons/math3/genetics/package-summary.html">org.apache.commons.math3.genetics</a></dt>
<dd>
<div class="block">Mutation for <a href="./org/apache/commons/math3/genetics/BinaryChromosome.html" title="class in org.apache.commons.math3.genetics"><code>BinaryChromosome</code></a>s.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/BinaryMutation.html#BinaryMutation()">BinaryMutation()</a></span> - Constructor for class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/BinaryMutation.html" title="class in org.apache.commons.math3.genetics">BinaryMutation</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ArithmeticUtils.html#binomialCoefficient(int, int)">binomialCoefficient(int, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ArithmeticUtils.html" title="class in org.apache.commons.math3.util">ArithmeticUtils</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>use <a href="./org/apache/commons/math3/util/CombinatoricsUtils.html#binomialCoefficient(int, int)"><code>CombinatoricsUtils.binomialCoefficient(int, int)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/CombinatoricsUtils.html#binomialCoefficient(int, int)">binomialCoefficient(int, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/CombinatoricsUtils.html" title="class in org.apache.commons.math3.util">CombinatoricsUtils</a></dt>
<dd>
<div class="block">Returns an exact representation of the <a
 href="http://mathworld.wolfram.com/BinomialCoefficient.html"> Binomial
 Coefficient</a>, "<code>n choose k</code>", the number of
 <code>k</code>-element subsets that can be selected from an
 <code>n</code>-element set.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ArithmeticUtils.html#binomialCoefficientDouble(int, int)">binomialCoefficientDouble(int, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ArithmeticUtils.html" title="class in org.apache.commons.math3.util">ArithmeticUtils</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>use <a href="./org/apache/commons/math3/util/CombinatoricsUtils.html#binomialCoefficientDouble(int, int)"><code>CombinatoricsUtils.binomialCoefficientDouble(int, int)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/CombinatoricsUtils.html#binomialCoefficientDouble(int, int)">binomialCoefficientDouble(int, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/CombinatoricsUtils.html" title="class in org.apache.commons.math3.util">CombinatoricsUtils</a></dt>
<dd>
<div class="block">Returns a <code>double</code> representation of the <a
 href="http://mathworld.wolfram.com/BinomialCoefficient.html"> Binomial
 Coefficient</a>, "<code>n choose k</code>", the number of
 <code>k</code>-element subsets that can be selected from an
 <code>n</code>-element set.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ArithmeticUtils.html#binomialCoefficientLog(int, int)">binomialCoefficientLog(int, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ArithmeticUtils.html" title="class in org.apache.commons.math3.util">ArithmeticUtils</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>use <a href="./org/apache/commons/math3/util/CombinatoricsUtils.html#binomialCoefficientLog(int, int)"><code>CombinatoricsUtils.binomialCoefficientLog(int, int)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/CombinatoricsUtils.html#binomialCoefficientLog(int, int)">binomialCoefficientLog(int, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/CombinatoricsUtils.html" title="class in org.apache.commons.math3.util">CombinatoricsUtils</a></dt>
<dd>
<div class="block">Returns the natural <code>log</code> of the <a
 href="http://mathworld.wolfram.com/BinomialCoefficient.html"> Binomial
 Coefficient</a>, "<code>n choose k</code>", the number of
 <code>k</code>-element subsets that can be selected from an
 <code>n</code>-element set.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/interval/BinomialConfidenceInterval.html" title="interface in org.apache.commons.math3.stat.interval"><span class="strong">BinomialConfidenceInterval</span></a> - Interface in <a href="./org/apache/commons/math3/stat/interval/package-summary.html">org.apache.commons.math3.stat.interval</a></dt>
<dd>
<div class="block">Abstract base class to generate confidence intervals for a binomial proportion.</div>
</dd>
<dt><a href="./org/apache/commons/math3/distribution/BinomialDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">BinomialDistribution</span></a> - Class in <a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a></dt>
<dd>
<div class="block">Implementation of the binomial distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/BinomialDistribution.html#BinomialDistribution(int, double)">BinomialDistribution(int, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/BinomialDistribution.html" title="class in org.apache.commons.math3.distribution">BinomialDistribution</a></dt>
<dd>
<div class="block">Create a binomial distribution with the given number of trials and
 probability of success.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/BinomialDistribution.html#BinomialDistribution(org.apache.commons.math3.random.RandomGenerator, int, double)">BinomialDistribution(RandomGenerator, int, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/BinomialDistribution.html" title="class in org.apache.commons.math3.distribution">BinomialDistribution</a></dt>
<dd>
<div class="block">Creates a binomial distribution.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/inference/BinomialTest.html" title="class in org.apache.commons.math3.stat.inference"><span class="strong">BinomialTest</span></a> - Class in <a href="./org/apache/commons/math3/stat/inference/package-summary.html">org.apache.commons.math3.stat.inference</a></dt>
<dd>
<div class="block">Implements binomial test statistics.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/BinomialTest.html#BinomialTest()">BinomialTest()</a></span> - Constructor for class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/BinomialTest.html" title="class in org.apache.commons.math3.stat.inference">BinomialTest</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/BinomialTest.html#binomialTest(int, int, double, org.apache.commons.math3.stat.inference.AlternativeHypothesis, double)">binomialTest(int, int, double, AlternativeHypothesis, double)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/BinomialTest.html" title="class in org.apache.commons.math3.stat.inference">BinomialTest</a></dt>
<dd>
<div class="block">Returns whether the null hypothesis can be rejected with the given confidence level.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/BinomialTest.html#binomialTest(int, int, double, org.apache.commons.math3.stat.inference.AlternativeHypothesis)">binomialTest(int, int, double, AlternativeHypothesis)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/BinomialTest.html" title="class in org.apache.commons.math3.stat.inference">BinomialTest</a></dt>
<dd>
<div class="block">Returns the <i>observed significance level</i>, or
 <a href="http://www.cas.lancs.ac.uk/glossary_v1.1/hyptest.html#pvalue">p-value</a>,
 associated with a <a href="http://en.wikipedia.org/wiki/Binomial_test"> Binomial test</a>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/solvers/BisectionSolver.html" title="class in org.apache.commons.math3.analysis.solvers"><span class="strong">BisectionSolver</span></a> - Class in <a href="./org/apache/commons/math3/analysis/solvers/package-summary.html">org.apache.commons.math3.analysis.solvers</a></dt>
<dd>
<div class="block">Implements the <a href="http://mathworld.wolfram.com/Bisection.html">
 bisection algorithm</a> for finding zeros of univariate real functions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BisectionSolver.html#BisectionSolver()">BisectionSolver()</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BisectionSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BisectionSolver</a></dt>
<dd>
<div class="block">Construct a solver with default accuracy (1e-6).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BisectionSolver.html#BisectionSolver(double)">BisectionSolver(double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BisectionSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BisectionSolver</a></dt>
<dd>
<div class="block">Construct a solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BisectionSolver.html#BisectionSolver(double, double)">BisectionSolver(double, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BisectionSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BisectionSolver</a></dt>
<dd>
<div class="block">Construct a solver.</div>
</dd>
<dt><a href="./org/apache/commons/math3/random/BitsStreamGenerator.html" title="class in org.apache.commons.math3.random"><span class="strong">BitsStreamGenerator</span></a> - Class in <a href="./org/apache/commons/math3/random/package-summary.html">org.apache.commons.math3.random</a></dt>
<dd>
<div class="block">Base class for random number generators that generates bits streams.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/BitsStreamGenerator.html#BitsStreamGenerator()">BitsStreamGenerator()</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/BitsStreamGenerator.html" title="class in org.apache.commons.math3.random">BitsStreamGenerator</a></dt>
<dd>
<div class="block">Creates a new random number generator.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/BivariateFunction.html" title="interface in org.apache.commons.math3.analysis"><span class="strong">BivariateFunction</span></a> - Interface in <a href="./org/apache/commons/math3/analysis/package-summary.html">org.apache.commons.math3.analysis</a></dt>
<dd>
<div class="block">An interface representing a bivariate real function.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/interpolation/BivariateGridInterpolator.html" title="interface in org.apache.commons.math3.analysis.interpolation"><span class="strong">BivariateGridInterpolator</span></a> - Interface in <a href="./org/apache/commons/math3/analysis/interpolation/package-summary.html">org.apache.commons.math3.analysis.interpolation</a></dt>
<dd>
<div class="block">Interface representing a bivariate real interpolating function where the
 sample points must be specified on a regular grid.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#BLOCK_SIZE">BLOCK_SIZE</a></span> - Static variable in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Block size.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#BLOCK_SIZE">BLOCK_SIZE</a></span> - Static variable in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Block size.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear"><span class="strong">BlockFieldMatrix</span></a>&lt;<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="type parameter in BlockFieldMatrix">T</a> extends <a href="./org/apache/commons/math3/FieldElement.html" title="interface in org.apache.commons.math3">FieldElement</a>&lt;<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="type parameter in BlockFieldMatrix">T</a>&gt;&gt; - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Cache-friendly implementation of FieldMatrix using a flat arrays to store
 square blocks of the matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#BlockFieldMatrix(org.apache.commons.math3.Field, int, int)">BlockFieldMatrix(Field&lt;T&gt;, int, int)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Create a new matrix with the supplied row and column dimensions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#BlockFieldMatrix(T[][])">BlockFieldMatrix(T[][])</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Create a new dense matrix copying entries from raw layout data.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#BlockFieldMatrix(int, int, T[][], boolean)">BlockFieldMatrix(int, int, T[][], boolean)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Create a new dense matrix copying entries from block layout data.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#blockInverse(org.apache.commons.math3.linear.RealMatrix, int)">blockInverse(RealMatrix, int)</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Computes the inverse of the given matrix by splitting it into
 4 sub-matrices.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear"><span class="strong">BlockRealMatrix</span></a> - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Cache-friendly implementation of RealMatrix using a flat arrays to store
 square blocks of the matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#BlockRealMatrix(int, int)">BlockRealMatrix(int, int)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Create a new matrix with the supplied row and column dimensions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#BlockRealMatrix(double[][])">BlockRealMatrix(double[][])</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Create a new dense matrix copying entries from raw layout data.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#BlockRealMatrix(int, int, double[][], boolean)">BlockRealMatrix(int, int, double[][], boolean)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Create a new dense matrix copying entries from block layout data.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/BOBYQAOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv"><span class="strong">BOBYQAOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/package-summary.html">org.apache.commons.math3.optim.nonlinear.scalar.noderiv</a></dt>
<dd>
<div class="block">Powell's BOBYQA algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/BOBYQAOptimizer.html#BOBYQAOptimizer(int)">BOBYQAOptimizer(int)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/BOBYQAOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">BOBYQAOptimizer</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/BOBYQAOptimizer.html#BOBYQAOptimizer(int, double, double)">BOBYQAOptimizer(int, double, double)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/BOBYQAOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">BOBYQAOptimizer</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optimization/direct/BOBYQAOptimizer.html" title="class in org.apache.commons.math3.optimization.direct"><span class="strong">BOBYQAOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optimization/direct/package-summary.html">org.apache.commons.math3.optimization.direct</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BOBYQAOptimizer.html#BOBYQAOptimizer(int)">BOBYQAOptimizer(int)</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BOBYQAOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BOBYQAOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BOBYQAOptimizer.html#BOBYQAOptimizer(int, double, double)">BOBYQAOptimizer(int, double, double)</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BOBYQAOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BOBYQAOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/geometry/partitioning/BoundaryAttribute.html" title="class in org.apache.commons.math3.geometry.partitioning"><span class="strong">BoundaryAttribute</span></a>&lt;<a href="./org/apache/commons/math3/geometry/partitioning/BoundaryAttribute.html" title="type parameter in BoundaryAttribute">S</a> extends <a href="./org/apache/commons/math3/geometry/Space.html" title="interface in org.apache.commons.math3.geometry">Space</a>&gt; - Class in <a href="./org/apache/commons/math3/geometry/partitioning/package-summary.html">org.apache.commons.math3.geometry.partitioning</a></dt>
<dd>
<div class="block">Class holding boundary attributes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/BoundaryAttribute.html#BoundaryAttribute(org.apache.commons.math3.geometry.partitioning.SubHyperplane, org.apache.commons.math3.geometry.partitioning.SubHyperplane)">BoundaryAttribute(SubHyperplane&lt;S&gt;, SubHyperplane&lt;S&gt;)</a></span> - Constructor for class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/BoundaryAttribute.html" title="class in org.apache.commons.math3.geometry.partitioning">BoundaryAttribute</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/partitioning/BoundaryProjection.html" title="class in org.apache.commons.math3.geometry.partitioning"><span class="strong">BoundaryProjection</span></a>&lt;<a href="./org/apache/commons/math3/geometry/partitioning/BoundaryProjection.html" title="type parameter in BoundaryProjection">S</a> extends <a href="./org/apache/commons/math3/geometry/Space.html" title="interface in org.apache.commons.math3.geometry">Space</a>&gt; - Class in <a href="./org/apache/commons/math3/geometry/partitioning/package-summary.html">org.apache.commons.math3.geometry.partitioning</a></dt>
<dd>
<div class="block">Class holding the result of point projection on region boundary.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/BoundaryProjection.html#BoundaryProjection(org.apache.commons.math3.geometry.Point, org.apache.commons.math3.geometry.Point, double)">BoundaryProjection(Point&lt;S&gt;, Point&lt;S&gt;, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/BoundaryProjection.html" title="class in org.apache.commons.math3.geometry.partitioning">BoundaryProjection</a></dt>
<dd>
<div class="block">Constructor from raw elements.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/MultivariateFunctionMappingAdapter.html#boundedToUnbounded(double[])">boundedToUnbounded(double[])</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/MultivariateFunctionMappingAdapter.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar">MultivariateFunctionMappingAdapter</a></dt>
<dd>
<div class="block">Maps an array from bounded to unbounded.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/MultivariateFunctionMappingAdapter.html#boundedToUnbounded(double[])">boundedToUnbounded(double[])</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/MultivariateFunctionMappingAdapter.html" title="class in org.apache.commons.math3.optimization.direct">MultivariateFunctionMappingAdapter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Map an array from bounded to unbounded.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/UnivariateSolverUtils.html#bracket(org.apache.commons.math3.analysis.UnivariateFunction, double, double, double)">bracket(UnivariateFunction, double, double, double)</a></span> - Static method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/UnivariateSolverUtils.html" title="class in org.apache.commons.math3.analysis.solvers">UnivariateSolverUtils</a></dt>
<dd>
<div class="block">This method simply calls <a href="./org/apache/commons/math3/analysis/solvers/UnivariateSolverUtils.html#bracket(org.apache.commons.math3.analysis.UnivariateFunction, double, double, double, double, double, int)"><code>bracket(function, initial, lowerBound, upperBound, q, r, maximumIterations)</code></a>
 with <code>q</code> and <code>r</code> set to 1.0 and <code>maximumIterations</code> set to <code>Integer.MAX_VALUE</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/UnivariateSolverUtils.html#bracket(org.apache.commons.math3.analysis.UnivariateFunction, double, double, double, int)">bracket(UnivariateFunction, double, double, double, int)</a></span> - Static method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/UnivariateSolverUtils.html" title="class in org.apache.commons.math3.analysis.solvers">UnivariateSolverUtils</a></dt>
<dd>
<div class="block">This method simply calls <a href="./org/apache/commons/math3/analysis/solvers/UnivariateSolverUtils.html#bracket(org.apache.commons.math3.analysis.UnivariateFunction, double, double, double, double, double, int)"><code>bracket(function, initial, lowerBound, upperBound, q, r, maximumIterations)</code></a>
 with <code>q</code> and <code>r</code> set to 1.0.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/UnivariateSolverUtils.html#bracket(org.apache.commons.math3.analysis.UnivariateFunction, double, double, double, double, double, int)">bracket(UnivariateFunction, double, double, double, double, double, int)</a></span> - Static method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/UnivariateSolverUtils.html" title="class in org.apache.commons.math3.analysis.solvers">UnivariateSolverUtils</a></dt>
<dd>
<div class="block">This method attempts to find two values a and b satisfying 
  <code>lowerBound &lt;= a &lt; initial &lt; b &lt;= upperBound</code> 
  <code>f(a) * f(b) &lt;= 0</code> 
 
 If <code>f</code> is continuous on <code>[a,b]</code>, this means that <code>a</code>
 and <code>b</code> bracket a root of <code>f</code>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/solvers/BracketedUnivariateSolver.html" title="interface in org.apache.commons.math3.analysis.solvers"><span class="strong">BracketedUnivariateSolver</span></a>&lt;<a href="./org/apache/commons/math3/analysis/solvers/BracketedUnivariateSolver.html" title="type parameter in BracketedUnivariateSolver">FUNC</a> extends <a href="./org/apache/commons/math3/analysis/UnivariateFunction.html" title="interface in org.apache.commons.math3.analysis">UnivariateFunction</a>&gt; - Interface in <a href="./org/apache/commons/math3/analysis/solvers/package-summary.html">org.apache.commons.math3.analysis.solvers</a></dt>
<dd>
<div class="block">Interface for <a href="./org/apache/commons/math3/analysis/solvers/UnivariateSolver.html" title="interface in org.apache.commons.math3.analysis.solvers"><code>(univariate real) root-finding
 algorithms</code></a> that maintain a bracketed solution.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/univariate/BracketFinder.html" title="class in org.apache.commons.math3.optim.univariate"><span class="strong">BracketFinder</span></a> - Class in <a href="./org/apache/commons/math3/optim/univariate/package-summary.html">org.apache.commons.math3.optim.univariate</a></dt>
<dd>
<div class="block">Provide an interval that brackets a local optimum of a function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/BracketFinder.html#BracketFinder()">BracketFinder()</a></span> - Constructor for class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/BracketFinder.html" title="class in org.apache.commons.math3.optim.univariate">BracketFinder</a></dt>
<dd>
<div class="block">Constructor with default values <code>100, 50</code> (see the
 <a href="./org/apache/commons/math3/optim/univariate/BracketFinder.html#BracketFinder(double, int)"><code>other constructor</code></a>).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/BracketFinder.html#BracketFinder(double, int)">BracketFinder(double, int)</a></span> - Constructor for class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/BracketFinder.html" title="class in org.apache.commons.math3.optim.univariate">BracketFinder</a></dt>
<dd>
<div class="block">Create a bracketing interval finder.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/univariate/BracketFinder.html" title="class in org.apache.commons.math3.optimization.univariate"><span class="strong">BracketFinder</span></a> - Class in <a href="./org/apache/commons/math3/optimization/univariate/package-summary.html">org.apache.commons.math3.optimization.univariate</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/BracketFinder.html#BracketFinder()">BracketFinder()</a></span> - Constructor for class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/BracketFinder.html" title="class in org.apache.commons.math3.optimization.univariate">BracketFinder</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Constructor with default values <code>100, 50</code> (see the
 <a href="./org/apache/commons/math3/optimization/univariate/BracketFinder.html#BracketFinder(double, int)"><code>other constructor</code></a>).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/BracketFinder.html#BracketFinder(double, int)">BracketFinder(double, int)</a></span> - Constructor for class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/BracketFinder.html" title="class in org.apache.commons.math3.optimization.univariate">BracketFinder</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Create a bracketing interval finder.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/solvers/BracketingNthOrderBrentSolver.html" title="class in org.apache.commons.math3.analysis.solvers"><span class="strong">BracketingNthOrderBrentSolver</span></a> - Class in <a href="./org/apache/commons/math3/analysis/solvers/package-summary.html">org.apache.commons.math3.analysis.solvers</a></dt>
<dd>
<div class="block">This class implements a modification of the <a
 href="http://mathworld.wolfram.com/BrentsMethod.html"> Brent algorithm</a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BracketingNthOrderBrentSolver.html#BracketingNthOrderBrentSolver()">BracketingNthOrderBrentSolver()</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BracketingNthOrderBrentSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BracketingNthOrderBrentSolver</a></dt>
<dd>
<div class="block">Construct a solver with default accuracy and maximal order (1e-6 and 5 respectively)</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BracketingNthOrderBrentSolver.html#BracketingNthOrderBrentSolver(double, int)">BracketingNthOrderBrentSolver(double, int)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BracketingNthOrderBrentSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BracketingNthOrderBrentSolver</a></dt>
<dd>
<div class="block">Construct a solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BracketingNthOrderBrentSolver.html#BracketingNthOrderBrentSolver(double, double, int)">BracketingNthOrderBrentSolver(double, double, int)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BracketingNthOrderBrentSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BracketingNthOrderBrentSolver</a></dt>
<dd>
<div class="block">Construct a solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BracketingNthOrderBrentSolver.html#BracketingNthOrderBrentSolver(double, double, double, int)">BracketingNthOrderBrentSolver(double, double, double, int)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BracketingNthOrderBrentSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BracketingNthOrderBrentSolver</a></dt>
<dd>
<div class="block">Construct a solver.</div>
</dd>
<dt><a href="./org/apache/commons/math3/dfp/BracketingNthOrderBrentSolverDFP.html" title="class in org.apache.commons.math3.dfp"><span class="strong">BracketingNthOrderBrentSolverDFP</span></a> - Class in <a href="./org/apache/commons/math3/dfp/package-summary.html">org.apache.commons.math3.dfp</a></dt>
<dd>
<div class="block">This class implements a modification of the <a
 href="http://mathworld.wolfram.com/BrentsMethod.html"> Brent algorithm</a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/BracketingNthOrderBrentSolverDFP.html#BracketingNthOrderBrentSolverDFP(org.apache.commons.math3.dfp.Dfp, org.apache.commons.math3.dfp.Dfp, org.apache.commons.math3.dfp.Dfp, int)">BracketingNthOrderBrentSolverDFP(Dfp, Dfp, Dfp, int)</a></span> - Constructor for class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/BracketingNthOrderBrentSolverDFP.html" title="class in org.apache.commons.math3.dfp">BracketingNthOrderBrentSolverDFP</a></dt>
<dd>
<div class="block">Construct a solver.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/univariate/BrentOptimizer.html" title="class in org.apache.commons.math3.optim.univariate"><span class="strong">BrentOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optim/univariate/package-summary.html">org.apache.commons.math3.optim.univariate</a></dt>
<dd>
<div class="block">For a function defined on some interval <code>(lo, hi)</code>, this class
 finds an approximation <code>x</code> to the point at which the function
 attains its minimum.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/BrentOptimizer.html#BrentOptimizer(double, double, org.apache.commons.math3.optim.ConvergenceChecker)">BrentOptimizer(double, double, ConvergenceChecker&lt;UnivariatePointValuePair&gt;)</a></span> - Constructor for class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/BrentOptimizer.html" title="class in org.apache.commons.math3.optim.univariate">BrentOptimizer</a></dt>
<dd>
<div class="block">The arguments are used implement the original stopping criterion
 of Brent's algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/BrentOptimizer.html#BrentOptimizer(double, double)">BrentOptimizer(double, double)</a></span> - Constructor for class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/BrentOptimizer.html" title="class in org.apache.commons.math3.optim.univariate">BrentOptimizer</a></dt>
<dd>
<div class="block">The arguments are used for implementing the original stopping criterion
 of Brent's algorithm.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/univariate/BrentOptimizer.html" title="class in org.apache.commons.math3.optimization.univariate"><span class="strong">BrentOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optimization/univariate/package-summary.html">org.apache.commons.math3.optimization.univariate</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/BrentOptimizer.html#BrentOptimizer(double, double, org.apache.commons.math3.optimization.ConvergenceChecker)">BrentOptimizer(double, double, ConvergenceChecker&lt;UnivariatePointValuePair&gt;)</a></span> - Constructor for class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/BrentOptimizer.html" title="class in org.apache.commons.math3.optimization.univariate">BrentOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">The arguments are used implement the original stopping criterion
 of Brent's algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/BrentOptimizer.html#BrentOptimizer(double, double)">BrentOptimizer(double, double)</a></span> - Constructor for class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/BrentOptimizer.html" title="class in org.apache.commons.math3.optimization.univariate">BrentOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">The arguments are used for implementing the original stopping criterion
 of Brent's algorithm.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/solvers/BrentSolver.html" title="class in org.apache.commons.math3.analysis.solvers"><span class="strong">BrentSolver</span></a> - Class in <a href="./org/apache/commons/math3/analysis/solvers/package-summary.html">org.apache.commons.math3.analysis.solvers</a></dt>
<dd>
<div class="block">This class implements the <a href="http://mathworld.wolfram.com/BrentsMethod.html">
 Brent algorithm</a> for finding zeros of real univariate functions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BrentSolver.html#BrentSolver()">BrentSolver()</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BrentSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BrentSolver</a></dt>
<dd>
<div class="block">Construct a solver with default accuracy (1e-6).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BrentSolver.html#BrentSolver(double)">BrentSolver(double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BrentSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BrentSolver</a></dt>
<dd>
<div class="block">Construct a solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BrentSolver.html#BrentSolver(double, double)">BrentSolver(double, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BrentSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BrentSolver</a></dt>
<dd>
<div class="block">Construct a solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BrentSolver.html#BrentSolver(double, double, double)">BrentSolver(double, double, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BrentSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BrentSolver</a></dt>
<dd>
<div class="block">Construct a solver.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html" title="class in org.apache.commons.math3.geometry.partitioning"><span class="strong">BSPTree</span></a>&lt;<a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html" title="type parameter in BSPTree">S</a> extends <a href="./org/apache/commons/math3/geometry/Space.html" title="interface in org.apache.commons.math3.geometry">Space</a>&gt; - Class in <a href="./org/apache/commons/math3/geometry/partitioning/package-summary.html">org.apache.commons.math3.geometry.partitioning</a></dt>
<dd>
<div class="block">This class represent a Binary Space Partition tree.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html#BSPTree()">BSPTree()</a></span> - Constructor for class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html" title="class in org.apache.commons.math3.geometry.partitioning">BSPTree</a></dt>
<dd>
<div class="block">Build a tree having only one root cell representing the whole space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html#BSPTree(java.lang.Object)">BSPTree(Object)</a></span> - Constructor for class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html" title="class in org.apache.commons.math3.geometry.partitioning">BSPTree</a></dt>
<dd>
<div class="block">Build a tree having only one root cell representing the whole space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html#BSPTree(org.apache.commons.math3.geometry.partitioning.SubHyperplane, org.apache.commons.math3.geometry.partitioning.BSPTree, org.apache.commons.math3.geometry.partitioning.BSPTree, java.lang.Object)">BSPTree(SubHyperplane&lt;S&gt;, BSPTree&lt;S&gt;, BSPTree&lt;S&gt;, Object)</a></span> - Constructor for class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html" title="class in org.apache.commons.math3.geometry.partitioning">BSPTree</a></dt>
<dd>
<div class="block">Build a BSPTree from its underlying elements.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.LeafMerger.html" title="interface in org.apache.commons.math3.geometry.partitioning"><span class="strong">BSPTree.LeafMerger</span></a>&lt;<a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.LeafMerger.html" title="type parameter in BSPTree.LeafMerger">S</a> extends <a href="./org/apache/commons/math3/geometry/Space.html" title="interface in org.apache.commons.math3.geometry">Space</a>&gt; - Interface in <a href="./org/apache/commons/math3/geometry/partitioning/package-summary.html">org.apache.commons.math3.geometry.partitioning</a></dt>
<dd>
<div class="block">This interface gather the merging operations between a BSP tree
 leaf and another BSP tree.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/partitioning/BSPTreeVisitor.html" title="interface in org.apache.commons.math3.geometry.partitioning"><span class="strong">BSPTreeVisitor</span></a>&lt;<a href="./org/apache/commons/math3/geometry/partitioning/BSPTreeVisitor.html" title="type parameter in BSPTreeVisitor">S</a> extends <a href="./org/apache/commons/math3/geometry/Space.html" title="interface in org.apache.commons.math3.geometry">Space</a>&gt; - Interface in <a href="./org/apache/commons/math3/geometry/partitioning/package-summary.html">org.apache.commons.math3.geometry.partitioning</a></dt>
<dd>
<div class="block">This interface is used to visit <a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html" title="class in org.apache.commons.math3.geometry.partitioning"><code>BSP tree</code></a> nodes.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/partitioning/BSPTreeVisitor.Order.html" title="enum in org.apache.commons.math3.geometry.partitioning"><span class="strong">BSPTreeVisitor.Order</span></a> - Enum in <a href="./org/apache/commons/math3/geometry/partitioning/package-summary.html">org.apache.commons.math3.geometry.partitioning</a></dt>
<dd>
<div class="block">Enumerate for visit order with respect to plus sub-tree, minus sub-tree and cut sub-hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresBuilder.html#build()">build()</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresBuilder.html" title="class in org.apache.commons.math3.fitting.leastsquares">LeastSquaresBuilder</a></dt>
<dd>
<div class="block">Construct a <a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.html" title="interface in org.apache.commons.math3.fitting.leastsquares"><code>LeastSquaresProblem</code></a> from the data in this builder.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/AbstractSimplex.html#build(double[])">build(double[])</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/AbstractSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">AbstractSimplex</a></dt>
<dd>
<div class="block">Build an initial simplex.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/AbstractSimplex.html#build(double[])">build(double[])</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/AbstractSimplex.html" title="class in org.apache.commons.math3.optimization.direct">AbstractSimplex</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build an initial simplex.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#buildArray(org.apache.commons.math3.Field, int, int)">buildArray(Field&lt;T&gt;, int, int)</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.2, replaced by <a href="./org/apache/commons/math3/util/MathArrays.html#buildArray(org.apache.commons.math3.Field, int, int)"><code>MathArrays.buildArray(Field, int, int)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#buildArray(org.apache.commons.math3.Field, int)">buildArray(Field&lt;T&gt;, int)</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.2, replaced by <a href="./org/apache/commons/math3/util/MathArrays.html#buildArray(org.apache.commons.math3.Field, int)"><code>MathArrays.buildArray(Field, int)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#buildArray(org.apache.commons.math3.Field, int)">buildArray(Field&lt;T&gt;, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Build an array of elements.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#buildArray(org.apache.commons.math3.Field, int, int)">buildArray(Field&lt;T&gt;, int, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Build a double dimension  array of elements.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/RegionFactory.html#buildConvex(org.apache.commons.math3.geometry.partitioning.Hyperplane...)">buildConvex(Hyperplane&lt;S&gt;...)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/RegionFactory.html" title="class in org.apache.commons.math3.geometry.partitioning">RegionFactory</a></dt>
<dd>
<div class="block">Build a convex region from a collection of bounding hyperplanes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html#buildNew(org.apache.commons.math3.geometry.partitioning.BSPTree)">buildNew(BSPTree&lt;Euclidean1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">IntervalsSet</a></dt>
<dd>
<div class="block">Build a region using the instance as a prototype.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/SubOrientedPoint.html#buildNew(org.apache.commons.math3.geometry.partitioning.Hyperplane, org.apache.commons.math3.geometry.partitioning.Region)">buildNew(Hyperplane&lt;Euclidean1D&gt;, Region&lt;Euclidean1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/SubOrientedPoint.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">SubOrientedPoint</a></dt>
<dd>
<div class="block">Build a sub-hyperplane from an hyperplane and a region.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/PolyhedronsSet.html#buildNew(org.apache.commons.math3.geometry.partitioning.BSPTree)">buildNew(BSPTree&lt;Euclidean3D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/PolyhedronsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">PolyhedronsSet</a></dt>
<dd>
<div class="block">Build a region using the instance as a prototype.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/SubPlane.html#buildNew(org.apache.commons.math3.geometry.partitioning.Hyperplane, org.apache.commons.math3.geometry.partitioning.Region)">buildNew(Hyperplane&lt;Euclidean3D&gt;, Region&lt;Euclidean2D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/SubPlane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">SubPlane</a></dt>
<dd>
<div class="block">Build a sub-hyperplane from an hyperplane and a region.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/PolygonsSet.html#buildNew(org.apache.commons.math3.geometry.partitioning.BSPTree)">buildNew(BSPTree&lt;Euclidean2D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/PolygonsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">PolygonsSet</a></dt>
<dd>
<div class="block">Build a region using the instance as a prototype.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/SubLine.html#buildNew(org.apache.commons.math3.geometry.partitioning.Hyperplane, org.apache.commons.math3.geometry.partitioning.Region)">buildNew(Hyperplane&lt;Euclidean2D&gt;, Region&lt;Euclidean1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/SubLine.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">SubLine</a></dt>
<dd>
<div class="block">Build a sub-hyperplane from an hyperplane and a region.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html#buildNew(org.apache.commons.math3.geometry.partitioning.BSPTree)">buildNew(BSPTree&lt;S&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractRegion</a></dt>
<dd>
<div class="block">Build a region using the instance as a prototype.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractSubHyperplane.html#buildNew(org.apache.commons.math3.geometry.partitioning.Hyperplane, org.apache.commons.math3.geometry.partitioning.Region)">buildNew(Hyperplane&lt;S&gt;, Region&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractSubHyperplane.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractSubHyperplane</a></dt>
<dd>
<div class="block">Build a sub-hyperplane from an hyperplane and a region.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/Region.html#buildNew(org.apache.commons.math3.geometry.partitioning.BSPTree)">buildNew(BSPTree&lt;S&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/Region.html" title="interface in org.apache.commons.math3.geometry.partitioning">Region</a></dt>
<dd>
<div class="block">Build a region using the instance as a prototype.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/ArcsSet.html#buildNew(org.apache.commons.math3.geometry.partitioning.BSPTree)">buildNew(BSPTree&lt;Sphere1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/ArcsSet.html" title="class in org.apache.commons.math3.geometry.spherical.oned">ArcsSet</a></dt>
<dd>
<div class="block">Build a region using the instance as a prototype.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/SubLimitAngle.html#buildNew(org.apache.commons.math3.geometry.partitioning.Hyperplane, org.apache.commons.math3.geometry.partitioning.Region)">buildNew(Hyperplane&lt;Sphere1D&gt;, Region&lt;Sphere1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/SubLimitAngle.html" title="class in org.apache.commons.math3.geometry.spherical.oned">SubLimitAngle</a></dt>
<dd>
<div class="block">Build a sub-hyperplane from an hyperplane and a region.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/SphericalPolygonsSet.html#buildNew(org.apache.commons.math3.geometry.partitioning.BSPTree)">buildNew(BSPTree&lt;Sphere2D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/SphericalPolygonsSet.html" title="class in org.apache.commons.math3.geometry.spherical.twod">SphericalPolygonsSet</a></dt>
<dd>
<div class="block">Build a region using the instance as a prototype.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/SubCircle.html#buildNew(org.apache.commons.math3.geometry.partitioning.Hyperplane, org.apache.commons.math3.geometry.partitioning.Region)">buildNew(Hyperplane&lt;Sphere2D&gt;, Region&lt;Sphere1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/SubCircle.html" title="class in org.apache.commons.math3.geometry.spherical.twod">SubCircle</a></dt>
<dd>
<div class="block">Build a sub-hyperplane from an hyperplane and a region.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#byteValue()">byteValue()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">

 The current implementation performs casting to a <code>byte</code>.</div>
</dd>
</dl>
<a name="_C_">
<!--   -->
</a>
<h2 class="title">C</h2>
<dl>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/OLSMultipleLinearRegression.html#calculateAdjustedRSquared()">calculateAdjustedRSquared()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/OLSMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">OLSMultipleLinearRegression</a></dt>
<dd>
<div class="block">Returns the adjusted R-squared statistic, defined by the formula</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html#calculateBeta()">calculateBeta()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">AbstractMultipleLinearRegression</a></dt>
<dd>
<div class="block">Calculates the beta of multiple linear regression in matrix notation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/GLSMultipleLinearRegression.html#calculateBeta()">calculateBeta()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/GLSMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">GLSMultipleLinearRegression</a></dt>
<dd>
<div class="block">Calculates beta by GLS.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/OLSMultipleLinearRegression.html#calculateBeta()">calculateBeta()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/OLSMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">OLSMultipleLinearRegression</a></dt>
<dd>
<div class="block">Calculates the regression coefficients using OLS.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html#calculateBetaVariance()">calculateBetaVariance()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">AbstractMultipleLinearRegression</a></dt>
<dd>
<div class="block">Calculates the beta variance of multiple linear regression in matrix
 notation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/GLSMultipleLinearRegression.html#calculateBetaVariance()">calculateBetaVariance()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/GLSMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">GLSMultipleLinearRegression</a></dt>
<dd>
<div class="block">Calculates the variance on the beta.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/OLSMultipleLinearRegression.html#calculateBetaVariance()">calculateBetaVariance()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/OLSMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">OLSMultipleLinearRegression</a></dt>
<dd>
<div class="block">Calculates the variance-covariance matrix of the regression parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html#calculateErrorVariance()">calculateErrorVariance()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">AbstractMultipleLinearRegression</a></dt>
<dd>
<div class="block">Calculates the variance of the error term.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/GLSMultipleLinearRegression.html#calculateErrorVariance()">calculateErrorVariance()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/GLSMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">GLSMultipleLinearRegression</a></dt>
<dd>
<div class="block">Calculates the estimated variance of the error term using the formula</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/OLSMultipleLinearRegression.html#calculateHat()">calculateHat()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/OLSMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">OLSMultipleLinearRegression</a></dt>
<dd>
<div class="block">Compute the "hat" matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/WeibullDistribution.html#calculateNumericalMean()">calculateNumericalMean()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/WeibullDistribution.html" title="class in org.apache.commons.math3.distribution">WeibullDistribution</a></dt>
<dd>
<div class="block">used by <a href="./org/apache/commons/math3/distribution/WeibullDistribution.html#getNumericalMean()"><code>WeibullDistribution.getNumericalMean()</code></a></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ZipfDistribution.html#calculateNumericalMean()">calculateNumericalMean()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ZipfDistribution.html" title="class in org.apache.commons.math3.distribution">ZipfDistribution</a></dt>
<dd>
<div class="block">Used by <a href="./org/apache/commons/math3/distribution/ZipfDistribution.html#getNumericalMean()"><code>ZipfDistribution.getNumericalMean()</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/FDistribution.html#calculateNumericalVariance()">calculateNumericalVariance()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/FDistribution.html" title="class in org.apache.commons.math3.distribution">FDistribution</a></dt>
<dd>
<div class="block">used by <a href="./org/apache/commons/math3/distribution/FDistribution.html#getNumericalVariance()"><code>FDistribution.getNumericalVariance()</code></a></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/HypergeometricDistribution.html#calculateNumericalVariance()">calculateNumericalVariance()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/HypergeometricDistribution.html" title="class in org.apache.commons.math3.distribution">HypergeometricDistribution</a></dt>
<dd>
<div class="block">Used by <a href="./org/apache/commons/math3/distribution/HypergeometricDistribution.html#getNumericalVariance()"><code>HypergeometricDistribution.getNumericalVariance()</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/WeibullDistribution.html#calculateNumericalVariance()">calculateNumericalVariance()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/WeibullDistribution.html" title="class in org.apache.commons.math3.distribution">WeibullDistribution</a></dt>
<dd>
<div class="block">used by <a href="./org/apache/commons/math3/distribution/WeibullDistribution.html#getNumericalVariance()"><code>WeibullDistribution.getNumericalVariance()</code></a></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ZipfDistribution.html#calculateNumericalVariance()">calculateNumericalVariance()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ZipfDistribution.html" title="class in org.apache.commons.math3.distribution">ZipfDistribution</a></dt>
<dd>
<div class="block">Used by <a href="./org/apache/commons/math3/distribution/ZipfDistribution.html#getNumericalVariance()"><code>ZipfDistribution.getNumericalVariance()</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html#calculateResiduals()">calculateResiduals()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">AbstractMultipleLinearRegression</a></dt>
<dd>
<div class="block">Calculates the residuals of multiple linear regression in matrix
 notation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/OLSMultipleLinearRegression.html#calculateResidualSumOfSquares()">calculateResidualSumOfSquares()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/OLSMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">OLSMultipleLinearRegression</a></dt>
<dd>
<div class="block">Returns the sum of squared residuals.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/OLSMultipleLinearRegression.html#calculateRSquared()">calculateRSquared()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/OLSMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">OLSMultipleLinearRegression</a></dt>
<dd>
<div class="block">Returns the R-Squared statistic, defined by the formula</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/OLSMultipleLinearRegression.html#calculateTotalSumOfSquares()">calculateTotalSumOfSquares()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/OLSMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">OLSMultipleLinearRegression</a></dt>
<dd>
<div class="block">Returns the sum of squared deviations of Y from its mean.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html#calculateYVariance()">calculateYVariance()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">AbstractMultipleLinearRegression</a></dt>
<dd>
<div class="block">Calculates the variance of the y values.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/distance/CanberraDistance.html" title="class in org.apache.commons.math3.ml.distance"><span class="strong">CanberraDistance</span></a> - Class in <a href="./org/apache/commons/math3/ml/distance/package-summary.html">org.apache.commons.math3.ml.distance</a></dt>
<dd>
<div class="block">Calculates the Canberra distance between two points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/distance/CanberraDistance.html#CanberraDistance()">CanberraDistance()</a></span> - Constructor for class org.apache.commons.math3.ml.distance.<a href="./org/apache/commons/math3/ml/distance/CanberraDistance.html" title="class in org.apache.commons.math3.ml.distance">CanberraDistance</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Incrementor.html#canIncrement()">canIncrement()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Incrementor.html" title="class in org.apache.commons.math3.util">Incrementor</a></dt>
<dd>
<div class="block">Checks whether a single increment is allowed.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/threed/CardanEulerSingularityException.html" title="class in org.apache.commons.math3.geometry.euclidean.threed"><span class="strong">CardanEulerSingularityException</span></a> - Exception in <a href="./org/apache/commons/math3/geometry/euclidean/threed/package-summary.html">org.apache.commons.math3.geometry.euclidean.threed</a></dt>
<dd>
<div class="block">This class represents exceptions thrown while extractiong Cardan
 or Euler angles from a rotation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/CardanEulerSingularityException.html#CardanEulerSingularityException(boolean)">CardanEulerSingularityException(boolean)</a></span> - Constructor for exception org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/CardanEulerSingularityException.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">CardanEulerSingularityException</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/distribution/CauchyDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">CauchyDistribution</span></a> - Class in <a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a></dt>
<dd>
<div class="block">Implementation of the Cauchy distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/CauchyDistribution.html#CauchyDistribution()">CauchyDistribution()</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/CauchyDistribution.html" title="class in org.apache.commons.math3.distribution">CauchyDistribution</a></dt>
<dd>
<div class="block">Creates a Cauchy distribution with the median equal to zero and scale
 equal to one.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/CauchyDistribution.html#CauchyDistribution(double, double)">CauchyDistribution(double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/CauchyDistribution.html" title="class in org.apache.commons.math3.distribution">CauchyDistribution</a></dt>
<dd>
<div class="block">Creates a Cauchy distribution using the given median and scale.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/CauchyDistribution.html#CauchyDistribution(double, double, double)">CauchyDistribution(double, double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/CauchyDistribution.html" title="class in org.apache.commons.math3.distribution">CauchyDistribution</a></dt>
<dd>
<div class="block">Creates a Cauchy distribution using the given median and scale.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/CauchyDistribution.html#CauchyDistribution(org.apache.commons.math3.random.RandomGenerator, double, double)">CauchyDistribution(RandomGenerator, double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/CauchyDistribution.html" title="class in org.apache.commons.math3.distribution">CauchyDistribution</a></dt>
<dd>
<div class="block">Creates a Cauchy distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/CauchyDistribution.html#CauchyDistribution(org.apache.commons.math3.random.RandomGenerator, double, double, double)">CauchyDistribution(RandomGenerator, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/CauchyDistribution.html" title="class in org.apache.commons.math3.distribution">CauchyDistribution</a></dt>
<dd>
<div class="block">Creates a Cauchy distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#cbrt()">cbrt()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Cubic root.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#cbrt()">cbrt()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Cubic root.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Cbrt.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Cbrt</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Cube root function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Cbrt.html#Cbrt()">Cbrt()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Cbrt.html" title="class in org.apache.commons.math3.analysis.function">Cbrt</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#cbrt()">cbrt()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Cubic root.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#cbrt()">cbrt()</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Cubic root.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#cbrt()">cbrt()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Cubic root.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#cbrt(double)">cbrt(double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Compute the cubic root of a number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/KolmogorovSmirnovDistribution.html#cdf(double)">cdf(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/KolmogorovSmirnovDistribution.html" title="class in org.apache.commons.math3.distribution">KolmogorovSmirnovDistribution</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Calculates <code>P(D_n &lt; d)</code> using method described in [1] with quick
 decisions for extreme values given in [2] (see above).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/KolmogorovSmirnovDistribution.html#cdf(double, boolean)">cdf(double, boolean)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/KolmogorovSmirnovDistribution.html" title="class in org.apache.commons.math3.distribution">KolmogorovSmirnovDistribution</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Calculates <code>P(D_n &lt; d)</code> using method described in [1] with quick
 decisions for extreme values given in [2] (see above).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html#cdf(double, int)">cdf(double, int)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html" title="class in org.apache.commons.math3.stat.inference">KolmogorovSmirnovTest</a></dt>
<dd>
<div class="block">Calculates \(P(D_n < d)\) using the method described in [1] with quick decisions for extreme
 values given in [2] (see above).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html#cdf(double, int, boolean)">cdf(double, int, boolean)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html" title="class in org.apache.commons.math3.stat.inference">KolmogorovSmirnovTest</a></dt>
<dd>
<div class="block">Calculates <code>P(D_n &lt; d)</code> using method described in [1] with quick decisions for extreme
 values given in [2] (see above).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/KolmogorovSmirnovDistribution.html#cdfExact(double)">cdfExact(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/KolmogorovSmirnovDistribution.html" title="class in org.apache.commons.math3.distribution">KolmogorovSmirnovDistribution</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Calculates <code>P(D_n &lt; d)</code> using method described in [1] with quick
 decisions for extreme values given in [2] (see above).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html#cdfExact(double, int)">cdfExact(double, int)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html" title="class in org.apache.commons.math3.stat.inference">KolmogorovSmirnovTest</a></dt>
<dd>
<div class="block">Calculates <code>P(D_n &lt; d)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#ceil()">ceil()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Get the smallest whole number larger than instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#ceil()">ceil()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Get the smallest whole number larger than instance.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Ceil.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Ceil</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block"><code>ceil</code> function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Ceil.html#Ceil()">Ceil()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Ceil.html" title="class in org.apache.commons.math3.analysis.function">Ceil</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#ceil()">ceil()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Round to an integer using the round ceil mode.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#ceil()">ceil()</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Get the smallest whole number larger than instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#ceil()">ceil()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Get the smallest whole number larger than instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#ceil(double)">ceil(double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Get the smallest whole number larger than x.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/clustering/CentroidCluster.html" title="class in org.apache.commons.math3.ml.clustering"><span class="strong">CentroidCluster</span></a>&lt;<a href="./org/apache/commons/math3/ml/clustering/CentroidCluster.html" title="type parameter in CentroidCluster">T</a> extends <a href="./org/apache/commons/math3/ml/clustering/Clusterable.html" title="interface in org.apache.commons.math3.ml.clustering">Clusterable</a>&gt; - Class in <a href="./org/apache/commons/math3/ml/clustering/package-summary.html">org.apache.commons.math3.ml.clustering</a></dt>
<dd>
<div class="block">A Cluster used by centroid-based clustering algorithms.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/CentroidCluster.html#CentroidCluster(org.apache.commons.math3.ml.clustering.Clusterable)">CentroidCluster(Clusterable)</a></span> - Constructor for class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/CentroidCluster.html" title="class in org.apache.commons.math3.ml.clustering">CentroidCluster</a></dt>
<dd>
<div class="block">Build a cluster centered at a specified point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/evaluation/ClusterEvaluator.html#centroidOf(org.apache.commons.math3.ml.clustering.Cluster)">centroidOf(Cluster&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.ml.clustering.evaluation.<a href="./org/apache/commons/math3/ml/clustering/evaluation/ClusterEvaluator.html" title="class in org.apache.commons.math3.ml.clustering.evaluation">ClusterEvaluator</a></dt>
<dd>
<div class="block">Computes the centroid for a cluster.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/clustering/Clusterable.html#centroidOf(java.util.Collection)">centroidOf(Collection&lt;T&gt;)</a></span> - Method in interface org.apache.commons.math3.stat.clustering.<a href="./org/apache/commons/math3/stat/clustering/Clusterable.html" title="interface in org.apache.commons.math3.stat.clustering">Clusterable</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Returns the centroid of the given Collection of points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/clustering/EuclideanDoublePoint.html#centroidOf(java.util.Collection)">centroidOf(Collection&lt;EuclideanDoublePoint&gt;)</a></span> - Method in class org.apache.commons.math3.stat.clustering.<a href="./org/apache/commons/math3/stat/clustering/EuclideanDoublePoint.html" title="class in org.apache.commons.math3.stat.clustering">EuclideanDoublePoint</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Returns the centroid of the given Collection of points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/clustering/EuclideanIntegerPoint.html#centroidOf(java.util.Collection)">centroidOf(Collection&lt;EuclideanIntegerPoint&gt;)</a></span> - Method in class org.apache.commons.math3.stat.clustering.<a href="./org/apache/commons/math3/stat/clustering/EuclideanIntegerPoint.html" title="class in org.apache.commons.math3.stat.clustering">EuclideanIntegerPoint</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Returns the centroid of the given Collection of points.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/distance/ChebyshevDistance.html" title="class in org.apache.commons.math3.ml.distance"><span class="strong">ChebyshevDistance</span></a> - Class in <a href="./org/apache/commons/math3/ml/distance/package-summary.html">org.apache.commons.math3.ml.distance</a></dt>
<dd>
<div class="block">Calculates the L<sub>&infin;</sub> (max of abs) distance between two points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/distance/ChebyshevDistance.html#ChebyshevDistance()">ChebyshevDistance()</a></span> - Constructor for class org.apache.commons.math3.ml.distance.<a href="./org/apache/commons/math3/ml/distance/ChebyshevDistance.html" title="class in org.apache.commons.math3.ml.distance">ChebyshevDistance</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#checkAdditionCompatible(org.apache.commons.math3.linear.FieldMatrix)">checkAdditionCompatible(FieldMatrix&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Check if a matrix is addition compatible with the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#checkAdditionCompatible(org.apache.commons.math3.linear.AnyMatrix, org.apache.commons.math3.linear.AnyMatrix)">checkAdditionCompatible(AnyMatrix, AnyMatrix)</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Check if matrices are addition compatible.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/CombinatoricsUtils.html#checkBinomial(int, int)">checkBinomial(int, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/CombinatoricsUtils.html" title="class in org.apache.commons.math3.util">CombinatoricsUtils</a></dt>
<dd>
<div class="block">Check binomial preconditions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#checkColumnIndex(int)">checkColumnIndex(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Check if a column index is valid.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#checkColumnIndex(org.apache.commons.math3.linear.AnyMatrix, int)">checkColumnIndex(AnyMatrix, int)</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Check if a column index is valid.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#checkCompatibility(org.apache.commons.math3.analysis.differentiation.DSCompiler)">checkCompatibility(DSCompiler)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Check rules set compatibility.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#checkContractExpand(float, float)">checkContractExpand(float, float)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1. Please use
 <a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#checkContractExpand(double, double)"><code>ResizableDoubleArray.checkContractExpand(double,double)</code></a> instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#checkContractExpand(double, double)">checkContractExpand(double, double)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block">Checks the expansion factor and the contraction criterion and raises
 an exception if the contraction criterion is smaller than the
 expansion criterion.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresBuilder.html#checker(org.apache.commons.math3.optim.ConvergenceChecker)">checker(ConvergenceChecker&lt;LeastSquaresProblem.Evaluation&gt;)</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresBuilder.html" title="class in org.apache.commons.math3.fitting.leastsquares">LeastSquaresBuilder</a></dt>
<dd>
<div class="block">Configure the convergence checker.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresBuilder.html#checkerPair(org.apache.commons.math3.optim.ConvergenceChecker)">checkerPair(ConvergenceChecker&lt;PointVectorValuePair&gt;)</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresBuilder.html" title="class in org.apache.commons.math3.fitting.leastsquares">LeastSquaresBuilder</a></dt>
<dd>
<div class="block">Configure the convergence checker.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathUtils.html#checkFinite(double)">checkFinite(double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathUtils.html" title="class in org.apache.commons.math3.util">MathUtils</a></dt>
<dd>
<div class="block">Check that the argument is a real number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathUtils.html#checkFinite(double[])">checkFinite(double[])</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathUtils.html" title="class in org.apache.commons.math3.util">MathUtils</a></dt>
<dd>
<div class="block">Check that all the elements are real numbers.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#checkIndex(int)">checkIndex(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Check if an index is valid.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#checkIndices(int, int)">checkIndices(int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Checks that the indices of a subvector are valid.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#checkMatrixIndex(org.apache.commons.math3.linear.AnyMatrix, int, int)">checkMatrixIndex(AnyMatrix, int, int)</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Check if matrix indices are valid.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#checkMultiplicationCompatible(org.apache.commons.math3.linear.FieldMatrix)">checkMultiplicationCompatible(FieldMatrix&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Check if a matrix is multiplication compatible with the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#checkMultiplicationCompatible(org.apache.commons.math3.linear.AnyMatrix, org.apache.commons.math3.linear.AnyMatrix)">checkMultiplicationCompatible(AnyMatrix, AnyMatrix)</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Check if matrices are multiplication compatible</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#checkNonNegative(long[])">checkNonNegative(long[])</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Check that all entries of the input array are >= 0.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#checkNonNegative(long[][])">checkNonNegative(long[][])</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Check all entries of the input array are >= 0.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathUtils.html#checkNotNull(java.lang.Object, org.apache.commons.math3.exception.util.Localizable, java.lang.Object...)">checkNotNull(Object, Localizable, Object...)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathUtils.html" title="class in org.apache.commons.math3.util">MathUtils</a></dt>
<dd>
<div class="block">Checks that an object is not null.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathUtils.html#checkNotNull(java.lang.Object)">checkNotNull(Object)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathUtils.html" title="class in org.apache.commons.math3.util">MathUtils</a></dt>
<dd>
<div class="block">Checks that an object is not null.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#checkOrder(double[], org.apache.commons.math3.util.MathArrays.OrderDirection, boolean, boolean)">checkOrder(double[], MathArrays.OrderDirection, boolean, boolean)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Check that the given array is sorted.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#checkOrder(double[], org.apache.commons.math3.util.MathArrays.OrderDirection, boolean)">checkOrder(double[], MathArrays.OrderDirection, boolean)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Check that the given array is sorted.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#checkOrder(double[])">checkOrder(double[])</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Check that the given array is sorted in strictly increasing order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/IterativeLinearSolver.html#checkParameters(org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealVector, org.apache.commons.math3.linear.RealVector)">checkParameters(RealLinearOperator, RealVector, RealVector)</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/IterativeLinearSolver.html" title="class in org.apache.commons.math3.linear">IterativeLinearSolver</a></dt>
<dd>
<div class="block">Performs all dimension checks on the parameters of
 <a href="./org/apache/commons/math3/linear/IterativeLinearSolver.html#solve(org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealVector, org.apache.commons.math3.linear.RealVector)"><code>solve</code></a> and
 <a href="./org/apache/commons/math3/linear/IterativeLinearSolver.html#solveInPlace(org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealVector, org.apache.commons.math3.linear.RealVector)"><code>solveInPlace</code></a>,
 and throws an exception if one of the checks fails.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/PreconditionedIterativeLinearSolver.html#checkParameters(org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealVector, org.apache.commons.math3.linear.RealVector)">checkParameters(RealLinearOperator, RealLinearOperator, RealVector, RealVector)</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/PreconditionedIterativeLinearSolver.html" title="class in org.apache.commons.math3.linear">PreconditionedIterativeLinearSolver</a></dt>
<dd>
<div class="block">Performs all dimension checks on the parameters of
 <a href="./org/apache/commons/math3/linear/PreconditionedIterativeLinearSolver.html#solve(org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealVector, org.apache.commons.math3.linear.RealVector)"><code>solve</code></a>
 and
 <a href="./org/apache/commons/math3/linear/PreconditionedIterativeLinearSolver.html#solveInPlace(org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealVector, org.apache.commons.math3.linear.RealVector)"><code>solveInPlace</code></a>,
 and throws an exception if one of the checks fails.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Interval.html#checkPoint(double, double)">checkPoint(double, double)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Interval.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Interval</a></dt>
<dd>
<div class="block">Check a point with respect to the interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html#checkPoint(org.apache.commons.math3.geometry.Vector)">checkPoint(Vector&lt;S&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractRegion</a></dt>
<dd>
<div class="block">Check a point with respect to the region.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html#checkPoint(org.apache.commons.math3.geometry.Point)">checkPoint(Point&lt;S&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractRegion</a></dt>
<dd>
<div class="block">Check a point with respect to the region.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html#checkPoint(org.apache.commons.math3.geometry.partitioning.BSPTree, org.apache.commons.math3.geometry.Vector)">checkPoint(BSPTree&lt;S&gt;, Vector&lt;S&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractRegion</a></dt>
<dd>
<div class="block">Check a point with respect to the region starting at a given node.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html#checkPoint(org.apache.commons.math3.geometry.partitioning.BSPTree, org.apache.commons.math3.geometry.Point)">checkPoint(BSPTree&lt;S&gt;, Point&lt;S&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractRegion</a></dt>
<dd>
<div class="block">Check a point with respect to the region starting at a given node.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/Region.html#checkPoint(org.apache.commons.math3.geometry.Point)">checkPoint(Point&lt;S&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/Region.html" title="interface in org.apache.commons.math3.geometry.partitioning">Region</a></dt>
<dd>
<div class="block">Check a point with respect to the region.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/Arc.html#checkPoint(double)">checkPoint(double)</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/Arc.html" title="class in org.apache.commons.math3.geometry.spherical.oned">Arc</a></dt>
<dd>
<div class="block">Check a point with respect to the arc.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#checkPositive(double[])">checkPositive(double[])</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Check that all entries of the input array are strictly positive.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#checkRectangular(long[][])">checkRectangular(long[][])</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Throws DimensionMismatchException if the input array is not rectangular.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#checkRowIndex(int)">checkRowIndex(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Check if a row index is valid.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#checkRowIndex(org.apache.commons.math3.linear.AnyMatrix, int)">checkRowIndex(AnyMatrix, int)</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Check if a row index is valid.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#checkSubMatrixIndex(int, int, int, int)">checkSubMatrixIndex(int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Check if submatrix ranges indices are valid.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#checkSubMatrixIndex(int[], int[])">checkSubMatrixIndex(int[], int[])</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Check if submatrix ranges indices are valid.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#checkSubMatrixIndex(org.apache.commons.math3.linear.AnyMatrix, int, int, int, int)">checkSubMatrixIndex(AnyMatrix, int, int, int, int)</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Check if submatrix ranges indices are valid.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#checkSubMatrixIndex(org.apache.commons.math3.linear.AnyMatrix, int[], int[])">checkSubMatrixIndex(AnyMatrix, int[], int[])</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Check if submatrix ranges indices are valid.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#checkSubtractionCompatible(org.apache.commons.math3.linear.FieldMatrix)">checkSubtractionCompatible(FieldMatrix&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Check if a matrix is subtraction compatible with the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#checkSubtractionCompatible(org.apache.commons.math3.linear.AnyMatrix, org.apache.commons.math3.linear.AnyMatrix)">checkSubtractionCompatible(AnyMatrix, AnyMatrix)</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Check if matrices are subtraction compatible</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#checkSymmetric(org.apache.commons.math3.linear.RealMatrix, double)">checkSymmetric(RealMatrix, double)</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Checks whether a matrix is symmetric.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/AbstractListChromosome.html#checkValidity(java.util.List)">checkValidity(List&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/AbstractListChromosome.html" title="class in org.apache.commons.math3.genetics">AbstractListChromosome</a></dt>
<dd>
<div class="block">Asserts that <code>representation</code> can represent a valid chromosome.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/BinaryChromosome.html#checkValidity(java.util.List)">checkValidity(List&lt;Integer&gt;)</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/BinaryChromosome.html" title="class in org.apache.commons.math3.genetics">BinaryChromosome</a></dt>
<dd>
<div class="block">Asserts that <code>representation</code> can represent a valid chromosome.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/RandomKey.html#checkValidity(java.util.List)">checkValidity(List&lt;Double&gt;)</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/RandomKey.html" title="class in org.apache.commons.math3.genetics">RandomKey</a></dt>
<dd>
<div class="block">Asserts that <code>representation</code> can represent a valid chromosome.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#checkVectorDimensions(org.apache.commons.math3.linear.FieldVector)">checkVectorDimensions(FieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Check if instance and specified vectors have the same dimension.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#checkVectorDimensions(int)">checkVectorDimensions(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Check if instance dimension is equal to some expected value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#checkVectorDimensions(org.apache.commons.math3.linear.RealVector)">checkVectorDimensions(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Check if instance and specified vectors have the same dimension.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#checkVectorDimensions(int)">checkVectorDimensions(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Check if instance dimension is equal to some expected value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#checkVectorDimensions(org.apache.commons.math3.linear.RealVector)">checkVectorDimensions(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Check if instance and specified vectors have the same dimension.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#checkVectorDimensions(int)">checkVectorDimensions(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Check if instance dimension is equal to some expected value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#checkVectorDimensions(int)">checkVectorDimensions(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Check if instance dimension is equal to some expected value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/ChiSquareTest.html#chiSquare(double[], long[])">chiSquare(double[], long[])</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/ChiSquareTest.html" title="class in org.apache.commons.math3.stat.inference">ChiSquareTest</a></dt>
<dd>
<div class="block">Computes the <a href="http://www.itl.nist.gov/div898/handbook/eda/section3/eda35f.htm">
 Chi-Square statistic</a> comparing <code>observed</code> and <code>expected</code>
 frequency counts.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/ChiSquareTest.html#chiSquare(long[][])">chiSquare(long[][])</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/ChiSquareTest.html" title="class in org.apache.commons.math3.stat.inference">ChiSquareTest</a></dt>
<dd>
<div class="block">Computes the Chi-Square statistic associated with a
 <a href="http://www.itl.nist.gov/div898/handbook/prc/section4/prc45.htm">
  chi-square test of independence</a> based on the input <code>counts</code>
  array, viewed as a two-way table.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#chiSquare(double[], long[])">chiSquare(double[], long[])</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#chiSquare(long[][])">chiSquare(long[][])</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/ChiSquareTest.html#chiSquareDataSetsComparison(long[], long[])">chiSquareDataSetsComparison(long[], long[])</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/ChiSquareTest.html" title="class in org.apache.commons.math3.stat.inference">ChiSquareTest</a></dt>
<dd>
<div class="block">Computes a
 <a href="http://www.itl.nist.gov/div898/software/dataplot/refman1/auxillar/chi2samp.htm">
 Chi-Square two sample test statistic</a> comparing bin frequency counts
 in <code>observed1</code> and <code>observed2</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#chiSquareDataSetsComparison(long[], long[])">chiSquareDataSetsComparison(long[], long[])</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">ChiSquaredDistribution</span></a> - Class in <a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a></dt>
<dd>
<div class="block">Implementation of the chi-squared distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html#ChiSquaredDistribution(double)">ChiSquaredDistribution(double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html" title="class in org.apache.commons.math3.distribution">ChiSquaredDistribution</a></dt>
<dd>
<div class="block">Create a Chi-Squared distribution with the given degrees of freedom.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html#ChiSquaredDistribution(double, double)">ChiSquaredDistribution(double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html" title="class in org.apache.commons.math3.distribution">ChiSquaredDistribution</a></dt>
<dd>
<div class="block">Create a Chi-Squared distribution with the given degrees of freedom and
 inverse cumulative probability accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html#ChiSquaredDistribution(org.apache.commons.math3.random.RandomGenerator, double)">ChiSquaredDistribution(RandomGenerator, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html" title="class in org.apache.commons.math3.distribution">ChiSquaredDistribution</a></dt>
<dd>
<div class="block">Create a Chi-Squared distribution with the given degrees of freedom.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html#ChiSquaredDistribution(org.apache.commons.math3.random.RandomGenerator, double, double)">ChiSquaredDistribution(RandomGenerator, double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html" title="class in org.apache.commons.math3.distribution">ChiSquaredDistribution</a></dt>
<dd>
<div class="block">Create a Chi-Squared distribution with the given degrees of freedom and
 inverse cumulative probability accuracy.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/inference/ChiSquareTest.html" title="class in org.apache.commons.math3.stat.inference"><span class="strong">ChiSquareTest</span></a> - Class in <a href="./org/apache/commons/math3/stat/inference/package-summary.html">org.apache.commons.math3.stat.inference</a></dt>
<dd>
<div class="block">Implements Chi-Square test statistics.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/ChiSquareTest.html#ChiSquareTest()">ChiSquareTest()</a></span> - Constructor for class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/ChiSquareTest.html" title="class in org.apache.commons.math3.stat.inference">ChiSquareTest</a></dt>
<dd>
<div class="block">Construct a ChiSquareTest</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/ChiSquareTest.html#chiSquareTest(double[], long[])">chiSquareTest(double[], long[])</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/ChiSquareTest.html" title="class in org.apache.commons.math3.stat.inference">ChiSquareTest</a></dt>
<dd>
<div class="block">Returns the <i>observed significance level</i>, or <a href=
 "http://www.cas.lancs.ac.uk/glossary_v1.1/hyptest.html#pvalue">
 p-value</a>, associated with a
 <a href="http://www.itl.nist.gov/div898/handbook/eda/section3/eda35f.htm">
 Chi-square goodness of fit test</a> comparing the <code>observed</code>
 frequency counts to those in the <code>expected</code> array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/ChiSquareTest.html#chiSquareTest(double[], long[], double)">chiSquareTest(double[], long[], double)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/ChiSquareTest.html" title="class in org.apache.commons.math3.stat.inference">ChiSquareTest</a></dt>
<dd>
<div class="block">Performs a <a href="http://www.itl.nist.gov/div898/handbook/eda/section3/eda35f.htm">
 Chi-square goodness of fit test</a> evaluating the null hypothesis that the
 observed counts conform to the frequency distribution described by the expected
 counts, with significance level <code>alpha</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/ChiSquareTest.html#chiSquareTest(long[][])">chiSquareTest(long[][])</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/ChiSquareTest.html" title="class in org.apache.commons.math3.stat.inference">ChiSquareTest</a></dt>
<dd>
<div class="block">Returns the <i>observed significance level</i>, or <a href=
 "http://www.cas.lancs.ac.uk/glossary_v1.1/hyptest.html#pvalue">
 p-value</a>, associated with a
 <a href="http://www.itl.nist.gov/div898/handbook/prc/section4/prc45.htm">
 chi-square test of independence</a> based on the input <code>counts</code>
 array, viewed as a two-way table.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/ChiSquareTest.html#chiSquareTest(long[][], double)">chiSquareTest(long[][], double)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/ChiSquareTest.html" title="class in org.apache.commons.math3.stat.inference">ChiSquareTest</a></dt>
<dd>
<div class="block">Performs a <a href="http://www.itl.nist.gov/div898/handbook/prc/section4/prc45.htm">
 chi-square test of independence</a> evaluating the null hypothesis that the
 classifications represented by the counts in the columns of the input 2-way table
 are independent of the rows, with significance level <code>alpha</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#chiSquareTest(double[], long[], double)">chiSquareTest(double[], long[], double)</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#chiSquareTest(double[], long[])">chiSquareTest(double[], long[])</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#chiSquareTest(long[][], double)">chiSquareTest(long[][], double)</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#chiSquareTest(long[][])">chiSquareTest(long[][])</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/ChiSquareTest.html#chiSquareTestDataSetsComparison(long[], long[])">chiSquareTestDataSetsComparison(long[], long[])</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/ChiSquareTest.html" title="class in org.apache.commons.math3.stat.inference">ChiSquareTest</a></dt>
<dd>
<div class="block">Returns the <i>observed significance level</i>, or <a href=
 "http://www.cas.lancs.ac.uk/glossary_v1.1/hyptest.html#pvalue">
 p-value</a>, associated with a Chi-Square two sample test comparing
 bin frequency counts in <code>observed1</code> and
 <code>observed2</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/ChiSquareTest.html#chiSquareTestDataSetsComparison(long[], long[], double)">chiSquareTestDataSetsComparison(long[], long[], double)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/ChiSquareTest.html" title="class in org.apache.commons.math3.stat.inference">ChiSquareTest</a></dt>
<dd>
<div class="block">Performs a Chi-Square two sample test comparing two binned data
 sets.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#chiSquareTestDataSetsComparison(long[], long[])">chiSquareTestDataSetsComparison(long[], long[])</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#chiSquareTestDataSetsComparison(long[], long[], double)">chiSquareTestDataSetsComparison(long[], long[], double)</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/linear/CholeskyDecomposition.html" title="class in org.apache.commons.math3.linear"><span class="strong">CholeskyDecomposition</span></a> - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Calculates the Cholesky decomposition of a matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/CholeskyDecomposition.html#CholeskyDecomposition(org.apache.commons.math3.linear.RealMatrix)">CholeskyDecomposition(RealMatrix)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/CholeskyDecomposition.html" title="class in org.apache.commons.math3.linear">CholeskyDecomposition</a></dt>
<dd>
<div class="block">Calculates the Cholesky decomposition of the given matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/CholeskyDecomposition.html#CholeskyDecomposition(org.apache.commons.math3.linear.RealMatrix, double, double)">CholeskyDecomposition(RealMatrix, double, double)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/CholeskyDecomposition.html" title="class in org.apache.commons.math3.linear">CholeskyDecomposition</a></dt>
<dd>
<div class="block">Calculates the Cholesky decomposition of the given matrix.</div>
</dd>
<dt><a href="./org/apache/commons/math3/genetics/Chromosome.html" title="class in org.apache.commons.math3.genetics"><span class="strong">Chromosome</span></a> - Class in <a href="./org/apache/commons/math3/genetics/package-summary.html">org.apache.commons.math3.genetics</a></dt>
<dd>
<div class="block">Individual in a population.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/Chromosome.html#Chromosome()">Chromosome()</a></span> - Constructor for class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/Chromosome.html" title="class in org.apache.commons.math3.genetics">Chromosome</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/genetics/ChromosomePair.html" title="class in org.apache.commons.math3.genetics"><span class="strong">ChromosomePair</span></a> - Class in <a href="./org/apache/commons/math3/genetics/package-summary.html">org.apache.commons.math3.genetics</a></dt>
<dd>
<div class="block">A pair of <a href="./org/apache/commons/math3/genetics/Chromosome.html" title="class in org.apache.commons.math3.genetics"><code>Chromosome</code></a> objects.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/ChromosomePair.html#ChromosomePair(org.apache.commons.math3.genetics.Chromosome, org.apache.commons.math3.genetics.Chromosome)">ChromosomePair(Chromosome, Chromosome)</a></span> - Constructor for class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/ChromosomePair.html" title="class in org.apache.commons.math3.genetics">ChromosomePair</a></dt>
<dd>
<div class="block">Create a chromosome pair.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html" title="class in org.apache.commons.math3.geometry.spherical.twod"><span class="strong">Circle</span></a> - Class in <a href="./org/apache/commons/math3/geometry/spherical/twod/package-summary.html">org.apache.commons.math3.geometry.spherical.twod</a></dt>
<dd>
<div class="block">This class represents an oriented great circle on the 2-sphere.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html#Circle(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, double)">Circle(Vector3D, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html" title="class in org.apache.commons.math3.geometry.spherical.twod">Circle</a></dt>
<dd>
<div class="block">Build a great circle from its pole.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html#Circle(org.apache.commons.math3.geometry.spherical.twod.S2Point, org.apache.commons.math3.geometry.spherical.twod.S2Point, double)">Circle(S2Point, S2Point, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html" title="class in org.apache.commons.math3.geometry.spherical.twod">Circle</a></dt>
<dd>
<div class="block">Build a great circle from two non-aligned points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html#Circle(org.apache.commons.math3.geometry.spherical.twod.Circle)">Circle(Circle)</a></span> - Constructor for class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html" title="class in org.apache.commons.math3.geometry.spherical.twod">Circle</a></dt>
<dd>
<div class="block">Copy constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/TransformerMap.html#classes()">classes()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/TransformerMap.html" title="class in org.apache.commons.math3.util">TransformerMap</a></dt>
<dd>
<div class="block">Returns the Set of Classes used as keys in the map.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/nonstiff/ClassicalRungeKuttaIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff"><span class="strong">ClassicalRungeKuttaIntegrator</span></a> - Class in <a href="./org/apache/commons/math3/ode/nonstiff/package-summary.html">org.apache.commons.math3.ode.nonstiff</a></dt>
<dd>
<div class="block">This class implements the classical fourth order Runge-Kutta
 integrator for Ordinary Differential Equations (it is the most
 often used Runge-Kutta method).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/ClassicalRungeKuttaIntegrator.html#ClassicalRungeKuttaIntegrator(double)">ClassicalRungeKuttaIntegrator(double)</a></span> - Constructor for class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/ClassicalRungeKuttaIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">ClassicalRungeKuttaIntegrator</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#classify()">classify()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Returns the type - one of FINITE, INFINITE, SNAN, QNAN.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/WeightedObservedPoints.html#clear()">clear()</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/WeightedObservedPoints.html" title="class in org.apache.commons.math3.fitting">WeightedObservedPoints</a></dt>
<dd>
<div class="block">Removes all observations from this container.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/BaseMultiStartMultivariateOptimizer.html#clear()">clear()</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/BaseMultiStartMultivariateOptimizer.html" title="class in org.apache.commons.math3.optim">BaseMultiStartMultivariateOptimizer</a></dt>
<dd>
<div class="block">Method that will called in order to clear all stored optima.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/MultiStartMultivariateOptimizer.html#clear()">clear()</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/MultiStartMultivariateOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar">MultiStartMultivariateOptimizer</a></dt>
<dd>
<div class="block">Method that will called in order to clear all stored optima.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/MultiStartMultivariateVectorOptimizer.html#clear()">clear()</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.vector.<a href="./org/apache/commons/math3/optim/nonlinear/vector/MultiStartMultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector">MultiStartMultivariateVectorOptimizer</a></dt>
<dd>
<div class="block">Method that will called in order to clear all stored optima.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/AbstractRandomGenerator.html#clear()">clear()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/AbstractRandomGenerator.html" title="class in org.apache.commons.math3.random">AbstractRandomGenerator</a></dt>
<dd>
<div class="block">Clears the cache used by the default implementation of
 <a href="./org/apache/commons/math3/random/AbstractRandomGenerator.html#nextGaussian()"><code>AbstractRandomGenerator.nextGaussian()</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/BitsStreamGenerator.html#clear()">clear()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/BitsStreamGenerator.html" title="class in org.apache.commons.math3.random">BitsStreamGenerator</a></dt>
<dd>
<div class="block">Clears the cache used by the default implementation of
 <a href="./org/apache/commons/math3/random/BitsStreamGenerator.html#nextGaussian"><code>BitsStreamGenerator.nextGaussian</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AbstractStorelessUnivariateStatistic.html#clear()">clear()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AbstractStorelessUnivariateStatistic.html" title="class in org.apache.commons.math3.stat.descriptive">AbstractStorelessUnivariateStatistic</a></dt>
<dd>
<div class="block">Clears the internal state of the Statistic</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#clear()">clear()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Resets all statistics and storage</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/GeometricMean.html#clear()">clear()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/GeometricMean.html" title="class in org.apache.commons.math3.stat.descriptive.moment">GeometricMean</a></dt>
<dd>
<div class="block">Clears the internal state of the Statistic</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Kurtosis.html#clear()">clear()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Kurtosis.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Kurtosis</a></dt>
<dd>
<div class="block">Clears the internal state of the Statistic</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Mean.html#clear()">clear()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Mean.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Mean</a></dt>
<dd>
<div class="block">Clears the internal state of the Statistic</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/SecondMoment.html#clear()">clear()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/SecondMoment.html" title="class in org.apache.commons.math3.stat.descriptive.moment">SecondMoment</a></dt>
<dd>
<div class="block">Clears the internal state of the Statistic</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Skewness.html#clear()">clear()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Skewness.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Skewness</a></dt>
<dd>
<div class="block">Clears the internal state of the Statistic</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html#clear()">clear()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html" title="class in org.apache.commons.math3.stat.descriptive.moment">StandardDeviation</a></dt>
<dd>
<div class="block">Clears the internal state of the Statistic</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html#clear()">clear()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Variance</a></dt>
<dd>
<div class="block">Clears the internal state of the Statistic</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/VectorialCovariance.html#clear()">clear()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/VectorialCovariance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">VectorialCovariance</a></dt>
<dd>
<div class="block">Clears the internal state of the Statistic</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#clear()">clear()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">MultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Resets all statistics and storage</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/rank/Max.html#clear()">clear()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.rank.<a href="./org/apache/commons/math3/stat/descriptive/rank/Max.html" title="class in org.apache.commons.math3.stat.descriptive.rank">Max</a></dt>
<dd>
<div class="block">Clears the internal state of the Statistic</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/rank/Min.html#clear()">clear()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.rank.<a href="./org/apache/commons/math3/stat/descriptive/rank/Min.html" title="class in org.apache.commons.math3.stat.descriptive.rank">Min</a></dt>
<dd>
<div class="block">Clears the internal state of the Statistic</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StorelessUnivariateStatistic.html#clear()">clear()</a></span> - Method in interface org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StorelessUnivariateStatistic.html" title="interface in org.apache.commons.math3.stat.descriptive">StorelessUnivariateStatistic</a></dt>
<dd>
<div class="block">Clears the internal state of the Statistic</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/Product.html#clear()">clear()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/Product.html" title="class in org.apache.commons.math3.stat.descriptive.summary">Product</a></dt>
<dd>
<div class="block">Clears the internal state of the Statistic</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/Sum.html#clear()">clear()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/Sum.html" title="class in org.apache.commons.math3.stat.descriptive.summary">Sum</a></dt>
<dd>
<div class="block">Clears the internal state of the Statistic</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfLogs.html#clear()">clear()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfLogs.html" title="class in org.apache.commons.math3.stat.descriptive.summary">SumOfLogs</a></dt>
<dd>
<div class="block">Clears the internal state of the Statistic</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfSquares.html#clear()">clear()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfSquares.html" title="class in org.apache.commons.math3.stat.descriptive.summary">SumOfSquares</a></dt>
<dd>
<div class="block">Clears the internal state of the Statistic</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#clear()">clear()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">Resets all statistics and storage</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html#clear()">clear()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedDescriptiveStatistics</a></dt>
<dd>
<div class="block">Resets all statistics and storage</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html#clear()">clear()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedMultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Resets all statistics and storage</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#clear()">clear()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">Resets all statistics and storage</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#clear()">clear()</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Clears the frequency table</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/MillerUpdatingRegression.html#clear()">clear()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/MillerUpdatingRegression.html" title="class in org.apache.commons.math3.stat.regression">MillerUpdatingRegression</a></dt>
<dd>
<div class="block">As the name suggests,  clear wipes the internals and reorders everything in the
 canonical order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html#clear()">clear()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html" title="class in org.apache.commons.math3.stat.regression">SimpleRegression</a></dt>
<dd>
<div class="block">Clears all data from the model.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/UpdatingMultipleLinearRegression.html#clear()">clear()</a></span> - Method in interface org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/UpdatingMultipleLinearRegression.html" title="interface in org.apache.commons.math3.stat.regression">UpdatingMultipleLinearRegression</a></dt>
<dd>
<div class="block">Clears internal buffers and resets the regression model.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/DoubleArray.html#clear()">clear()</a></span> - Method in interface org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/DoubleArray.html" title="interface in org.apache.commons.math3.util">DoubleArray</a></dt>
<dd>
<div class="block">Clear the double array</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#clear()">clear()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block">Clear the array contents, resetting the number of elements to zero.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/TransformerMap.html#clear()">clear()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/TransformerMap.html" title="class in org.apache.commons.math3.util">TransformerMap</a></dt>
<dd>
<div class="block">Clears all the Class to Transformer mappings.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractIntegrator.html#clearEventHandlers()">clearEventHandlers()</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractIntegrator.html" title="class in org.apache.commons.math3.ode">AbstractIntegrator</a></dt>
<dd>
<div class="block">Remove all the event handlers that have been added to the integrator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ODEIntegrator.html#clearEventHandlers()">clearEventHandlers()</a></span> - Method in interface org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ODEIntegrator.html" title="interface in org.apache.commons.math3.ode">ODEIntegrator</a></dt>
<dd>
<div class="block">Remove all the event handlers that have been added to the integrator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#clearIEEEFlags()">clearIEEEFlags()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Clears the IEEE 854 status flags.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/CurveFitter.html#clearObservations()">clearObservations()</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/CurveFitter.html" title="class in org.apache.commons.math3.fitting">CurveFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Remove all observations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/fitting/CurveFitter.html#clearObservations()">clearObservations()</a></span> - Method in class org.apache.commons.math3.optimization.fitting.<a href="./org/apache/commons/math3/optimization/fitting/CurveFitter.html" title="class in org.apache.commons.math3.optimization.fitting">CurveFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Remove all observations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractIntegrator.html#clearStepHandlers()">clearStepHandlers()</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractIntegrator.html" title="class in org.apache.commons.math3.ode">AbstractIntegrator</a></dt>
<dd>
<div class="block">Remove all the step handlers that have been added to the integrator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ODEIntegrator.html#clearStepHandlers()">clearStepHandlers()</a></span> - Method in interface org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ODEIntegrator.html" title="interface in org.apache.commons.math3.ode">ODEIntegrator</a></dt>
<dd>
<div class="block">Remove all the step handlers that have been added to the integrator.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/interval/ClopperPearsonInterval.html" title="class in org.apache.commons.math3.stat.interval"><span class="strong">ClopperPearsonInterval</span></a> - Class in <a href="./org/apache/commons/math3/stat/interval/package-summary.html">org.apache.commons.math3.stat.interval</a></dt>
<dd>
<div class="block">Implements the Clopper-Pearson method for creating a binomial proportion confidence interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/interval/ClopperPearsonInterval.html#ClopperPearsonInterval()">ClopperPearsonInterval()</a></span> - Constructor for class org.apache.commons.math3.stat.interval.<a href="./org/apache/commons/math3/stat/interval/ClopperPearsonInterval.html" title="class in org.apache.commons.math3.stat.interval">ClopperPearsonInterval</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/ValueServer.html#closeReplayFile()">closeReplayFile()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/ValueServer.html" title="class in org.apache.commons.math3.random">ValueServer</a></dt>
<dd>
<div class="block">Closes <code>valuesFileURL</code> after use in REPLAY_MODE.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html#closestPoint(org.apache.commons.math3.geometry.euclidean.threed.Line)">closestPoint(Line)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Line</a></dt>
<dd>
<div class="block">Compute the point of the instance closest to another line.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/clustering/Cluster.html" title="class in org.apache.commons.math3.ml.clustering"><span class="strong">Cluster</span></a>&lt;<a href="./org/apache/commons/math3/ml/clustering/Cluster.html" title="type parameter in Cluster">T</a> extends <a href="./org/apache/commons/math3/ml/clustering/Clusterable.html" title="interface in org.apache.commons.math3.ml.clustering">Clusterable</a>&gt; - Class in <a href="./org/apache/commons/math3/ml/clustering/package-summary.html">org.apache.commons.math3.ml.clustering</a></dt>
<dd>
<div class="block">Cluster holding a set of <a href="./org/apache/commons/math3/ml/clustering/Clusterable.html" title="interface in org.apache.commons.math3.ml.clustering"><code>Clusterable</code></a> points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/Cluster.html#Cluster()">Cluster()</a></span> - Constructor for class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/Cluster.html" title="class in org.apache.commons.math3.ml.clustering">Cluster</a></dt>
<dd>
<div class="block">Build a cluster centered at a specified point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/Clusterer.html#cluster(java.util.Collection)">cluster(Collection&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/Clusterer.html" title="class in org.apache.commons.math3.ml.clustering">Clusterer</a></dt>
<dd>
<div class="block">Perform a cluster analysis on the given set of <a href="./org/apache/commons/math3/ml/clustering/Clusterable.html" title="interface in org.apache.commons.math3.ml.clustering"><code>Clusterable</code></a> instances.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/DBSCANClusterer.html#cluster(java.util.Collection)">cluster(Collection&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/DBSCANClusterer.html" title="class in org.apache.commons.math3.ml.clustering">DBSCANClusterer</a></dt>
<dd>
<div class="block">Performs DBSCAN cluster analysis.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/FuzzyKMeansClusterer.html#cluster(java.util.Collection)">cluster(Collection&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/FuzzyKMeansClusterer.html" title="class in org.apache.commons.math3.ml.clustering">FuzzyKMeansClusterer</a></dt>
<dd>
<div class="block">Performs Fuzzy K-Means cluster analysis.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/KMeansPlusPlusClusterer.html#cluster(java.util.Collection)">cluster(Collection&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/KMeansPlusPlusClusterer.html" title="class in org.apache.commons.math3.ml.clustering">KMeansPlusPlusClusterer</a></dt>
<dd>
<div class="block">Runs the K-means++ clustering algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/MultiKMeansPlusPlusClusterer.html#cluster(java.util.Collection)">cluster(Collection&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/MultiKMeansPlusPlusClusterer.html" title="class in org.apache.commons.math3.ml.clustering">MultiKMeansPlusPlusClusterer</a></dt>
<dd>
<div class="block">Runs the K-means++ clustering algorithm.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/clustering/Cluster.html" title="class in org.apache.commons.math3.stat.clustering"><span class="strong">Cluster</span></a>&lt;<a href="./org/apache/commons/math3/stat/clustering/Cluster.html" title="type parameter in Cluster">T</a> extends <a href="./org/apache/commons/math3/stat/clustering/Clusterable.html" title="interface in org.apache.commons.math3.stat.clustering">Clusterable</a>&lt;<a href="./org/apache/commons/math3/stat/clustering/Cluster.html" title="type parameter in Cluster">T</a>&gt;&gt; - Class in <a href="./org/apache/commons/math3/stat/clustering/package-summary.html">org.apache.commons.math3.stat.clustering</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.2 (to be removed in 4.0),
 use <a href="./org/apache/commons/math3/ml/clustering/Cluster.html" title="class in org.apache.commons.math3.ml.clustering"><code>Cluster</code></a> instead</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/clustering/Cluster.html#Cluster(T)">Cluster(T)</a></span> - Constructor for class org.apache.commons.math3.stat.clustering.<a href="./org/apache/commons/math3/stat/clustering/Cluster.html" title="class in org.apache.commons.math3.stat.clustering">Cluster</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a cluster centered at a specified point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/clustering/DBSCANClusterer.html#cluster(java.util.Collection)">cluster(Collection&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.stat.clustering.<a href="./org/apache/commons/math3/stat/clustering/DBSCANClusterer.html" title="class in org.apache.commons.math3.stat.clustering">DBSCANClusterer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Performs DBSCAN cluster analysis.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/clustering/KMeansPlusPlusClusterer.html#cluster(java.util.Collection, int, int, int)">cluster(Collection&lt;T&gt;, int, int, int)</a></span> - Method in class org.apache.commons.math3.stat.clustering.<a href="./org/apache/commons/math3/stat/clustering/KMeansPlusPlusClusterer.html" title="class in org.apache.commons.math3.stat.clustering">KMeansPlusPlusClusterer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Runs the K-means++ clustering algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/clustering/KMeansPlusPlusClusterer.html#cluster(java.util.Collection, int, int)">cluster(Collection&lt;T&gt;, int, int)</a></span> - Method in class org.apache.commons.math3.stat.clustering.<a href="./org/apache/commons/math3/stat/clustering/KMeansPlusPlusClusterer.html" title="class in org.apache.commons.math3.stat.clustering">KMeansPlusPlusClusterer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Runs the K-means++ clustering algorithm.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/clustering/Clusterable.html" title="interface in org.apache.commons.math3.ml.clustering"><span class="strong">Clusterable</span></a> - Interface in <a href="./org/apache/commons/math3/ml/clustering/package-summary.html">org.apache.commons.math3.ml.clustering</a></dt>
<dd>
<div class="block">Interface for n-dimensional points that can be clustered together.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/clustering/Clusterable.html" title="interface in org.apache.commons.math3.stat.clustering"><span class="strong">Clusterable</span></a>&lt;<a href="./org/apache/commons/math3/stat/clustering/Clusterable.html" title="type parameter in Clusterable">T</a>&gt; - Interface in <a href="./org/apache/commons/math3/stat/clustering/package-summary.html">org.apache.commons.math3.stat.clustering</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.2 (to be removed in 4.0),
 use <a href="./org/apache/commons/math3/ml/clustering/Clusterable.html" title="interface in org.apache.commons.math3.ml.clustering"><code>Clusterable</code></a> instead</i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/clustering/Clusterer.html" title="class in org.apache.commons.math3.ml.clustering"><span class="strong">Clusterer</span></a>&lt;<a href="./org/apache/commons/math3/ml/clustering/Clusterer.html" title="type parameter in Clusterer">T</a> extends <a href="./org/apache/commons/math3/ml/clustering/Clusterable.html" title="interface in org.apache.commons.math3.ml.clustering">Clusterable</a>&gt; - Class in <a href="./org/apache/commons/math3/ml/clustering/package-summary.html">org.apache.commons.math3.ml.clustering</a></dt>
<dd>
<div class="block">Base class for clustering algorithms.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/Clusterer.html#Clusterer(org.apache.commons.math3.ml.distance.DistanceMeasure)">Clusterer(DistanceMeasure)</a></span> - Constructor for class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/Clusterer.html" title="class in org.apache.commons.math3.ml.clustering">Clusterer</a></dt>
<dd>
<div class="block">Build a new clusterer with the given <a href="./org/apache/commons/math3/ml/distance/DistanceMeasure.html" title="interface in org.apache.commons.math3.ml.distance"><code>DistanceMeasure</code></a>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/clustering/evaluation/ClusterEvaluator.html" title="class in org.apache.commons.math3.ml.clustering.evaluation"><span class="strong">ClusterEvaluator</span></a>&lt;<a href="./org/apache/commons/math3/ml/clustering/evaluation/ClusterEvaluator.html" title="type parameter in ClusterEvaluator">T</a> extends <a href="./org/apache/commons/math3/ml/clustering/Clusterable.html" title="interface in org.apache.commons.math3.ml.clustering">Clusterable</a>&gt; - Class in <a href="./org/apache/commons/math3/ml/clustering/evaluation/package-summary.html">org.apache.commons.math3.ml.clustering.evaluation</a></dt>
<dd>
<div class="block">Base class for cluster evaluation methods.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/evaluation/ClusterEvaluator.html#ClusterEvaluator()">ClusterEvaluator()</a></span> - Constructor for class org.apache.commons.math3.ml.clustering.evaluation.<a href="./org/apache/commons/math3/ml/clustering/evaluation/ClusterEvaluator.html" title="class in org.apache.commons.math3.ml.clustering.evaluation">ClusterEvaluator</a></dt>
<dd>
<div class="block">Creates a new cluster evaluator with an <a href="./org/apache/commons/math3/ml/distance/EuclideanDistance.html" title="class in org.apache.commons.math3.ml.distance"><code>EuclideanDistance</code></a>
 as distance measure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/evaluation/ClusterEvaluator.html#ClusterEvaluator(org.apache.commons.math3.ml.distance.DistanceMeasure)">ClusterEvaluator(DistanceMeasure)</a></span> - Constructor for class org.apache.commons.math3.ml.clustering.evaluation.<a href="./org/apache/commons/math3/ml/clustering/evaluation/ClusterEvaluator.html" title="class in org.apache.commons.math3.ml.clustering.evaluation">ClusterEvaluator</a></dt>
<dd>
<div class="block">Creates a new cluster evaluator with the given distance measure.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/CMAESOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv"><span class="strong">CMAESOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/package-summary.html">org.apache.commons.math3.optim.nonlinear.scalar.noderiv</a></dt>
<dd>
<div class="block">An implementation of the active Covariance Matrix Adaptation Evolution Strategy (CMA-ES)
 for non-linear, non-convex, non-smooth, global function minimization.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/CMAESOptimizer.html#CMAESOptimizer(int, double, boolean, int, int, org.apache.commons.math3.random.RandomGenerator, boolean, org.apache.commons.math3.optim.ConvergenceChecker)">CMAESOptimizer(int, double, boolean, int, int, RandomGenerator, boolean, ConvergenceChecker&lt;PointValuePair&gt;)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/CMAESOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">CMAESOptimizer</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html" title="class in org.apache.commons.math3.optimization.direct"><span class="strong">CMAESOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optimization/direct/package-summary.html">org.apache.commons.math3.optimization.direct</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html#CMAESOptimizer()">CMAESOptimizer()</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">CMAESOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of version 3.1: Parameter <code>lambda</code> must be
 passed with the call to <a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html#optimize(int, FUNC, org.apache.commons.math3.optimization.GoalType, org.apache.commons.math3.optimization.OptimizationData...)"><code>optimize</code></a> (whereas in the current code it is set to an undocumented value).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html#CMAESOptimizer(int)">CMAESOptimizer(int)</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">CMAESOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of version 3.1: Parameter <code>lambda</code> must be
 passed with the call to <a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html#optimize(int, FUNC, org.apache.commons.math3.optimization.GoalType, org.apache.commons.math3.optimization.OptimizationData...)"><code>optimize</code></a> (whereas in the current code it is set to an undocumented value)..</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html#CMAESOptimizer(int, double[])">CMAESOptimizer(int, double[])</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">CMAESOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of version 3.1: Parameters <code>lambda</code> and <code>inputSigma</code> must be
 passed with the call to <a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html#optimize(int, FUNC, org.apache.commons.math3.optimization.GoalType, org.apache.commons.math3.optimization.OptimizationData...)"><code>optimize</code></a>.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html#CMAESOptimizer(int, double[], int, double, boolean, int, int, org.apache.commons.math3.random.RandomGenerator, boolean)">CMAESOptimizer(int, double[], int, double, boolean, int, int, RandomGenerator, boolean)</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">CMAESOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>See <a href="./org/apache/commons/math3/optimization/SimpleValueChecker.html#SimpleValueChecker()"><code>SimpleValueChecker.SimpleValueChecker()</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html#CMAESOptimizer(int, double[], int, double, boolean, int, int, org.apache.commons.math3.random.RandomGenerator, boolean, org.apache.commons.math3.optimization.ConvergenceChecker)">CMAESOptimizer(int, double[], int, double, boolean, int, int, RandomGenerator, boolean, ConvergenceChecker&lt;PointValuePair&gt;)</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">CMAESOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of version 3.1: Parameters <code>lambda</code> and <code>inputSigma</code> must be
 passed with the call to <a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html#optimize(int, FUNC, org.apache.commons.math3.optimization.GoalType, org.apache.commons.math3.optimization.OptimizationData...)"><code>optimize</code></a>.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html#CMAESOptimizer(int, double, boolean, int, int, org.apache.commons.math3.random.RandomGenerator, boolean, org.apache.commons.math3.optimization.ConvergenceChecker)">CMAESOptimizer(int, double, boolean, int, int, RandomGenerator, boolean, ConvergenceChecker&lt;PointValuePair&gt;)</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">CMAESOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/CMAESOptimizer.PopulationSize.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv"><span class="strong">CMAESOptimizer.PopulationSize</span></a> - Class in <a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/package-summary.html">org.apache.commons.math3.optim.nonlinear.scalar.noderiv</a></dt>
<dd>
<div class="block">Population size.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/CMAESOptimizer.PopulationSize.html#CMAESOptimizer.PopulationSize(int)">CMAESOptimizer.PopulationSize(int)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/CMAESOptimizer.PopulationSize.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">CMAESOptimizer.PopulationSize</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.PopulationSize.html" title="class in org.apache.commons.math3.optimization.direct"><span class="strong">CMAESOptimizer.PopulationSize</span></a> - Class in <a href="./org/apache/commons/math3/optimization/direct/package-summary.html">org.apache.commons.math3.optimization.direct</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Population size.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.PopulationSize.html#CMAESOptimizer.PopulationSize(int)">CMAESOptimizer.PopulationSize(int)</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.PopulationSize.html" title="class in org.apache.commons.math3.optimization.direct">CMAESOptimizer.PopulationSize</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/CMAESOptimizer.Sigma.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv"><span class="strong">CMAESOptimizer.Sigma</span></a> - Class in <a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/package-summary.html">org.apache.commons.math3.optim.nonlinear.scalar.noderiv</a></dt>
<dd>
<div class="block">Input sigma values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/CMAESOptimizer.Sigma.html#CMAESOptimizer.Sigma(double[])">CMAESOptimizer.Sigma(double[])</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/CMAESOptimizer.Sigma.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">CMAESOptimizer.Sigma</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.Sigma.html" title="class in org.apache.commons.math3.optimization.direct"><span class="strong">CMAESOptimizer.Sigma</span></a> - Class in <a href="./org/apache/commons/math3/optimization/direct/package-summary.html">org.apache.commons.math3.optimization.direct</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Input sigma values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.Sigma.html#CMAESOptimizer.Sigma(double[])">CMAESOptimizer.Sigma(double[])</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.Sigma.html" title="class in org.apache.commons.math3.optimization.direct">CMAESOptimizer.Sigma</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/FunctionUtils.html#collector(org.apache.commons.math3.analysis.BivariateFunction, org.apache.commons.math3.analysis.UnivariateFunction, double)">collector(BivariateFunction, UnivariateFunction, double)</a></span> - Static method in class org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/FunctionUtils.html" title="class in org.apache.commons.math3.analysis">FunctionUtils</a></dt>
<dd>
<div class="block">Returns a MultivariateFunction h(x[]) defined by</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/FunctionUtils.html#collector(org.apache.commons.math3.analysis.BivariateFunction, double)">collector(BivariateFunction, double)</a></span> - Static method in class org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/FunctionUtils.html" title="class in org.apache.commons.math3.analysis">FunctionUtils</a></dt>
<dd>
<div class="block">Returns a MultivariateFunction h(x[]) defined by</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#cols">cols</a></span> - Variable in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1.</i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/util/Combinations.html" title="class in org.apache.commons.math3.util"><span class="strong">Combinations</span></a> - Class in <a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a></dt>
<dd>
<div class="block">Utility to create <a href="http://en.wikipedia.org/wiki/Combination">
 combinations</a> <code>(n, k)</code> of <code>k</code> elements in a set of
 <code>n</code> elements.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Combinations.html#Combinations(int, int)">Combinations(int, int)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Combinations.html" title="class in org.apache.commons.math3.util">Combinations</a></dt>
<dd>
<div class="block">Creates an instance whose range is the k-element subsets of
 {0, ..., n - 1} represented as <code>int[]</code> arrays.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/CombinatoricsUtils.html#combinationsIterator(int, int)">combinationsIterator(int, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/CombinatoricsUtils.html" title="class in org.apache.commons.math3.util">CombinatoricsUtils</a></dt>
<dd>
<div class="block">Returns an iterator whose range is the k-element subsets of {0, ..., n - 1}
 represented as <code>int[]</code> arrays.</div>
</dd>
<dt><a href="./org/apache/commons/math3/util/CombinatoricsUtils.html" title="class in org.apache.commons.math3.util"><span class="strong">CombinatoricsUtils</span></a> - Class in <a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a></dt>
<dd>
<div class="block">Combinatorial utilities.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/FunctionUtils.html#combine(org.apache.commons.math3.analysis.BivariateFunction, org.apache.commons.math3.analysis.UnivariateFunction, org.apache.commons.math3.analysis.UnivariateFunction)">combine(BivariateFunction, UnivariateFunction, UnivariateFunction)</a></span> - Static method in class org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/FunctionUtils.html" title="class in org.apache.commons.math3.analysis">FunctionUtils</a></dt>
<dd>
<div class="block">Returns the univariate function <br/>
 <code>h(x) = combiner(f(x), g(x))</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#combine(double, double, org.apache.commons.math3.linear.RealVector)">combine(double, double, RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Returns a new vector representing <code>a * this + b * y</code>, the linear
 combination of <code>this</code> and <code>y</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#combine(double, double, org.apache.commons.math3.linear.RealVector)">combine(double, double, RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Returns a new vector representing <code>a * this + b * y</code>, the linear
 combination of <code>this</code> and <code>y</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#combineToSelf(double, double, org.apache.commons.math3.linear.RealVector)">combineToSelf(double, double, RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Updates <code>this</code> with the linear combination of <code>this</code> and
 <code>y</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#combineToSelf(double, double, org.apache.commons.math3.linear.RealVector)">combineToSelf(double, double, RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Updates <code>this</code> with the linear combination of <code>this</code> and
 <code>y</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Combinations.html#comparator()">comparator()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Combinations.html" title="class in org.apache.commons.math3.util">Combinations</a></dt>
<dd>
<div class="block">Defines a lexicographic ordering of combinations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/RandomKey.html#comparatorPermutation(java.util.List, java.util.Comparator)">comparatorPermutation(List&lt;S&gt;, Comparator&lt;S&gt;)</a></span> - Static method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/RandomKey.html" title="class in org.apache.commons.math3.genetics">RandomKey</a></dt>
<dd>
<div class="block">Generates a representation of a permutation corresponding to the
 <code>data</code> sorted by <code>comparator</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/Network.NeuronIdentifierComparator.html#compare(org.apache.commons.math3.ml.neuralnet.Neuron, org.apache.commons.math3.ml.neuralnet.Neuron)">compare(Neuron, Neuron)</a></span> - Method in class org.apache.commons.math3.ml.neuralnet.<a href="./org/apache/commons/math3/ml/neuralnet/Network.NeuronIdentifierComparator.html" title="class in org.apache.commons.math3.ml.neuralnet">Network.NeuronIdentifierComparator</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/Neuron.html#compareAndSetFeatures(double[], double[])">compareAndSetFeatures(double[], double[])</a></span> - Method in class org.apache.commons.math3.ml.neuralnet.<a href="./org/apache/commons/math3/ml/neuralnet/Neuron.html" title="class in org.apache.commons.math3.ml.neuralnet">Neuron</a></dt>
<dd>
<div class="block">Tries to atomically update the neuron's features.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#compareTo(org.apache.commons.math3.fraction.BigFraction)">compareTo(BigFraction)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Compares this object to another based on size.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#compareTo(org.apache.commons.math3.fraction.Fraction)">compareTo(Fraction)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">Compares this object to another based on size.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/Chromosome.html#compareTo(org.apache.commons.math3.genetics.Chromosome)">compareTo(Chromosome)</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/Chromosome.html" title="class in org.apache.commons.math3.genetics">Chromosome</a></dt>
<dd>
<div class="block">Compares two chromosomes based on their fitness.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/utilities/OrderedTuple.html#compareTo(org.apache.commons.math3.geometry.partitioning.utilities.OrderedTuple)">compareTo(OrderedTuple)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.utilities.<a href="./org/apache/commons/math3/geometry/partitioning/utilities/OrderedTuple.html" title="class in org.apache.commons.math3.geometry.partitioning.utilities">OrderedTuple</a></dt>
<dd>
<div class="block">Compares this ordered T-uple with the specified object.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#compareTo(org.apache.commons.math3.util.BigReal)">compareTo(BigReal)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#compareTo(org.apache.commons.math3.util.Decimal64)">compareTo(Decimal64)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">

 The current implementation returns the same value as
  <code>new Double(this.doubleValue()).compareTo(new
 Double(o.doubleValue()))</code> </div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Precision.html#compareTo(double, double, double)">compareTo(double, double, double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Precision.html" title="class in org.apache.commons.math3.util">Precision</a></dt>
<dd>
<div class="block">Compares two numbers given some amount of allowed error.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Precision.html#compareTo(double, double, int)">compareTo(double, double, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Precision.html" title="class in org.apache.commons.math3.util">Precision</a></dt>
<dd>
<div class="block">Compares two numbers given some amount of allowed error.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractParameterizable.html#complainIfNotSupported(java.lang.String)">complainIfNotSupported(String)</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractParameterizable.html" title="class in org.apache.commons.math3.ode">AbstractParameterizable</a></dt>
<dd>
<div class="block">Check if a parameter is supported and throw an IllegalArgumentException if not.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#complement(int)">complement(int)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Negate the mantissa of this by computing the complement.</div>
</dd>
<dt><a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex"><span class="strong">Complex</span></a> - Class in <a href="./org/apache/commons/math3/complex/package-summary.html">org.apache.commons.math3.complex</a></dt>
<dd>
<div class="block">Representation of a Complex number, i.e.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#Complex(double)">Complex(double)</a></span> - Constructor for class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Create a complex number given only the real part.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#Complex(double, double)">Complex(double, double)</a></span> - Constructor for class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Create a complex number given the real and imaginary parts.</div>
</dd>
<dt><a href="./org/apache/commons/math3/complex/ComplexField.html" title="class in org.apache.commons.math3.complex"><span class="strong">ComplexField</span></a> - Class in <a href="./org/apache/commons/math3/complex/package-summary.html">org.apache.commons.math3.complex</a></dt>
<dd>
<div class="block">Representation of the complex numbers field.</div>
</dd>
<dt><a href="./org/apache/commons/math3/complex/ComplexFormat.html" title="class in org.apache.commons.math3.complex"><span class="strong">ComplexFormat</span></a> - Class in <a href="./org/apache/commons/math3/complex/package-summary.html">org.apache.commons.math3.complex</a></dt>
<dd>
<div class="block">Formats a Complex number in cartesian format "Re(c) + Im(c)i".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/ComplexFormat.html#ComplexFormat()">ComplexFormat()</a></span> - Constructor for class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/ComplexFormat.html" title="class in org.apache.commons.math3.complex">ComplexFormat</a></dt>
<dd>
<div class="block">Create an instance with the default imaginary character, 'i', and the
 default number format for both real and imaginary parts.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/ComplexFormat.html#ComplexFormat(java.text.NumberFormat)">ComplexFormat(NumberFormat)</a></span> - Constructor for class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/ComplexFormat.html" title="class in org.apache.commons.math3.complex">ComplexFormat</a></dt>
<dd>
<div class="block">Create an instance with a custom number format for both real and
 imaginary parts.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/ComplexFormat.html#ComplexFormat(java.text.NumberFormat, java.text.NumberFormat)">ComplexFormat(NumberFormat, NumberFormat)</a></span> - Constructor for class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/ComplexFormat.html" title="class in org.apache.commons.math3.complex">ComplexFormat</a></dt>
<dd>
<div class="block">Create an instance with a custom number format for the real part and a
 custom number format for the imaginary part.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/ComplexFormat.html#ComplexFormat(java.lang.String)">ComplexFormat(String)</a></span> - Constructor for class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/ComplexFormat.html" title="class in org.apache.commons.math3.complex">ComplexFormat</a></dt>
<dd>
<div class="block">Create an instance with a custom imaginary character, and the default
 number format for both real and imaginary parts.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/ComplexFormat.html#ComplexFormat(java.lang.String, java.text.NumberFormat)">ComplexFormat(String, NumberFormat)</a></span> - Constructor for class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/ComplexFormat.html" title="class in org.apache.commons.math3.complex">ComplexFormat</a></dt>
<dd>
<div class="block">Create an instance with a custom imaginary character, and a custom number
 format for both real and imaginary parts.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/ComplexFormat.html#ComplexFormat(java.lang.String, java.text.NumberFormat, java.text.NumberFormat)">ComplexFormat(String, NumberFormat, NumberFormat)</a></span> - Constructor for class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/ComplexFormat.html" title="class in org.apache.commons.math3.complex">ComplexFormat</a></dt>
<dd>
<div class="block">Create an instance with a custom imaginary character, a custom number
 format for the real part, and a custom number format for the imaginary
 part.</div>
</dd>
<dt><a href="./org/apache/commons/math3/complex/ComplexUtils.html" title="class in org.apache.commons.math3.complex"><span class="strong">ComplexUtils</span></a> - Class in <a href="./org/apache/commons/math3/complex/package-summary.html">org.apache.commons.math3.complex</a></dt>
<dd>
<div class="block">Static implementations of common
 <a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex"><code>Complex</code></a> utilities functions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#compose(double...)">compose(double...)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Compute composition of the instance by a univariate function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#compose(double[], int, double[], double[], int)">compose(double[], int, double[], double[], int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Compute composition of a derivative structure by a function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#compose(double, double)">compose(double, double)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Compute composition of the instance by a univariate function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/FunctionUtils.html#compose(org.apache.commons.math3.analysis.UnivariateFunction...)">compose(UnivariateFunction...)</a></span> - Static method in class org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/FunctionUtils.html" title="class in org.apache.commons.math3.analysis">FunctionUtils</a></dt>
<dd>
<div class="block">Composes functions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/FunctionUtils.html#compose(org.apache.commons.math3.analysis.differentiation.UnivariateDifferentiableFunction...)">compose(UnivariateDifferentiableFunction...)</a></span> - Static method in class org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/FunctionUtils.html" title="class in org.apache.commons.math3.analysis">FunctionUtils</a></dt>
<dd>
<div class="block">Composes functions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/FunctionUtils.html#compose(org.apache.commons.math3.analysis.DifferentiableUnivariateFunction...)">compose(DifferentiableUnivariateFunction...)</a></span> - Static method in class org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/FunctionUtils.html" title="class in org.apache.commons.math3.analysis">FunctionUtils</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1 replaced by <a href="./org/apache/commons/math3/analysis/FunctionUtils.html#compose(org.apache.commons.math3.analysis.differentiation.UnivariateDifferentiableFunction...)"><code>FunctionUtils.compose(UnivariateDifferentiableFunction...)</code></a></i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/util/CompositeFormat.html" title="class in org.apache.commons.math3.util"><span class="strong">CompositeFormat</span></a> - Class in <a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a></dt>
<dd>
<div class="block">Base class for formatters of composite objects (complex numbers, vectors ...).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/distance/CanberraDistance.html#compute(double[], double[])">compute(double[], double[])</a></span> - Method in class org.apache.commons.math3.ml.distance.<a href="./org/apache/commons/math3/ml/distance/CanberraDistance.html" title="class in org.apache.commons.math3.ml.distance">CanberraDistance</a></dt>
<dd>
<div class="block">Compute the distance between two n-dimensional vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/distance/ChebyshevDistance.html#compute(double[], double[])">compute(double[], double[])</a></span> - Method in class org.apache.commons.math3.ml.distance.<a href="./org/apache/commons/math3/ml/distance/ChebyshevDistance.html" title="class in org.apache.commons.math3.ml.distance">ChebyshevDistance</a></dt>
<dd>
<div class="block">Compute the distance between two n-dimensional vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/distance/DistanceMeasure.html#compute(double[], double[])">compute(double[], double[])</a></span> - Method in interface org.apache.commons.math3.ml.distance.<a href="./org/apache/commons/math3/ml/distance/DistanceMeasure.html" title="interface in org.apache.commons.math3.ml.distance">DistanceMeasure</a></dt>
<dd>
<div class="block">Compute the distance between two n-dimensional vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/distance/EarthMoversDistance.html#compute(double[], double[])">compute(double[], double[])</a></span> - Method in class org.apache.commons.math3.ml.distance.<a href="./org/apache/commons/math3/ml/distance/EarthMoversDistance.html" title="class in org.apache.commons.math3.ml.distance">EarthMoversDistance</a></dt>
<dd>
<div class="block">Compute the distance between two n-dimensional vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/distance/EuclideanDistance.html#compute(double[], double[])">compute(double[], double[])</a></span> - Method in class org.apache.commons.math3.ml.distance.<a href="./org/apache/commons/math3/ml/distance/EuclideanDistance.html" title="class in org.apache.commons.math3.ml.distance">EuclideanDistance</a></dt>
<dd>
<div class="block">Compute the distance between two n-dimensional vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/distance/ManhattanDistance.html#compute(double[], double[])">compute(double[], double[])</a></span> - Method in class org.apache.commons.math3.ml.distance.<a href="./org/apache/commons/math3/ml/distance/ManhattanDistance.html" title="class in org.apache.commons.math3.ml.distance">ManhattanDistance</a></dt>
<dd>
<div class="block">Compute the distance between two n-dimensional vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#compute(org.apache.commons.math3.util.MathArrays.Function)">compute(MathArrays.Function)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block">Performs an operation on the addressable elements of the array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionLagrangeForm.html#computeCoefficients()">computeCoefficients()</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionLagrangeForm.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunctionLagrangeForm</a></dt>
<dd>
<div class="block">Calculate the coefficients of Lagrange polynomial from the
 interpolation data.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionNewtonForm.html#computeCoefficients()">computeCoefficients()</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionNewtonForm.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunctionNewtonForm</a></dt>
<dd>
<div class="block">Calculate the normal polynomial coefficients given the Newton form.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/KendallsCorrelation.html#computeCorrelationMatrix(org.apache.commons.math3.linear.RealMatrix)">computeCorrelationMatrix(RealMatrix)</a></span> - Method in class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/KendallsCorrelation.html" title="class in org.apache.commons.math3.stat.correlation">KendallsCorrelation</a></dt>
<dd>
<div class="block">Computes the Kendall's Tau rank correlation matrix for the columns of
 the input matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/KendallsCorrelation.html#computeCorrelationMatrix(double[][])">computeCorrelationMatrix(double[][])</a></span> - Method in class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/KendallsCorrelation.html" title="class in org.apache.commons.math3.stat.correlation">KendallsCorrelation</a></dt>
<dd>
<div class="block">Computes the Kendall's Tau rank correlation matrix for the columns of
 the input rectangular array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/PearsonsCorrelation.html#computeCorrelationMatrix(org.apache.commons.math3.linear.RealMatrix)">computeCorrelationMatrix(RealMatrix)</a></span> - Method in class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/PearsonsCorrelation.html" title="class in org.apache.commons.math3.stat.correlation">PearsonsCorrelation</a></dt>
<dd>
<div class="block">Computes the correlation matrix for the columns of the
 input matrix, using <a href="./org/apache/commons/math3/stat/correlation/PearsonsCorrelation.html#correlation(double[], double[])"><code>PearsonsCorrelation.correlation(double[], double[])</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/PearsonsCorrelation.html#computeCorrelationMatrix(double[][])">computeCorrelationMatrix(double[][])</a></span> - Method in class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/PearsonsCorrelation.html" title="class in org.apache.commons.math3.stat.correlation">PearsonsCorrelation</a></dt>
<dd>
<div class="block">Computes the correlation matrix for the columns of the
 input rectangular array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/SpearmansCorrelation.html#computeCorrelationMatrix(org.apache.commons.math3.linear.RealMatrix)">computeCorrelationMatrix(RealMatrix)</a></span> - Method in class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/SpearmansCorrelation.html" title="class in org.apache.commons.math3.stat.correlation">SpearmansCorrelation</a></dt>
<dd>
<div class="block">Computes the Spearman's rank correlation matrix for the columns of the
 input matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/SpearmansCorrelation.html#computeCorrelationMatrix(double[][])">computeCorrelationMatrix(double[][])</a></span> - Method in class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/SpearmansCorrelation.html" title="class in org.apache.commons.math3.stat.correlation">SpearmansCorrelation</a></dt>
<dd>
<div class="block">Computes the Spearman's rank correlation matrix for the columns of the
 input rectangular array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/AbstractLeastSquaresOptimizer.html#computeCost(double[])">computeCost(double[])</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.vector.jacobian.<a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector.jacobian">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Computes the cost.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#computeCost(double[])">computeCost(double[])</a></span> - Method in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Computes the cost.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/Covariance.html#computeCovarianceMatrix(org.apache.commons.math3.linear.RealMatrix, boolean)">computeCovarianceMatrix(RealMatrix, boolean)</a></span> - Method in class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/Covariance.html" title="class in org.apache.commons.math3.stat.correlation">Covariance</a></dt>
<dd>
<div class="block">Compute a covariance matrix from a matrix whose columns represent
 covariates.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/Covariance.html#computeCovarianceMatrix(org.apache.commons.math3.linear.RealMatrix)">computeCovarianceMatrix(RealMatrix)</a></span> - Method in class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/Covariance.html" title="class in org.apache.commons.math3.stat.correlation">Covariance</a></dt>
<dd>
<div class="block">Create a covariance matrix from a matrix whose columns represent
 covariates.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/Covariance.html#computeCovarianceMatrix(double[][], boolean)">computeCovarianceMatrix(double[][], boolean)</a></span> - Method in class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/Covariance.html" title="class in org.apache.commons.math3.stat.correlation">Covariance</a></dt>
<dd>
<div class="block">Compute a covariance matrix from a rectangular array whose columns represent
 covariates.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/Covariance.html#computeCovarianceMatrix(double[][])">computeCovarianceMatrix(double[][])</a></span> - Method in class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/Covariance.html" title="class in org.apache.commons.math3.stat.correlation">Covariance</a></dt>
<dd>
<div class="block">Create a covariance matrix from a rectangular array whose columns represent
 covariates.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/AbstractLeastSquaresOptimizer.html#computeCovariances(double[], double)">computeCovariances(double[], double)</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.vector.jacobian.<a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector.jacobian">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the covariance matrix of the optimized parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#computeCovariances(double[], double)">computeCovariances(double[], double)</a></span> - Method in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the covariance matrix of the optimized parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/AbstractDifferentiableUnivariateSolver.html#computeDerivativeObjectiveValue(double)">computeDerivativeObjectiveValue(double)</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/AbstractDifferentiableUnivariateSolver.html" title="class in org.apache.commons.math3.analysis.solvers">AbstractDifferentiableUnivariateSolver</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Compute the objective function value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractIntegrator.html#computeDerivatives(double, double[], double[])">computeDerivatives(double, double[], double[])</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractIntegrator.html" title="class in org.apache.commons.math3.ode">AbstractIntegrator</a></dt>
<dd>
<div class="block">Compute the derivatives and check the number of evaluations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html#computeDerivatives(double, double[], double[])">computeDerivatives(double, double[], double[])</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html" title="class in org.apache.commons.math3.ode">ExpandableStatefulODE</a></dt>
<dd>
<div class="block">Get the current time derivative of the complete state vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/FirstOrderConverter.html#computeDerivatives(double, double[], double[])">computeDerivatives(double, double[], double[])</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/FirstOrderConverter.html" title="class in org.apache.commons.math3.ode">FirstOrderConverter</a></dt>
<dd>
<div class="block">Get the current time derivative of the state vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/FirstOrderDifferentialEquations.html#computeDerivatives(double, double[], double[])">computeDerivatives(double, double[], double[])</a></span> - Method in interface org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/FirstOrderDifferentialEquations.html" title="interface in org.apache.commons.math3.ode">FirstOrderDifferentialEquations</a></dt>
<dd>
<div class="block">Get the current time derivative of the state vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/SecondaryEquations.html#computeDerivatives(double, double[], double[], double[], double[])">computeDerivatives(double, double[], double[], double[], double[])</a></span> - Method in interface org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/SecondaryEquations.html" title="interface in org.apache.commons.math3.ode">SecondaryEquations</a></dt>
<dd>
<div class="block">Compute the derivatives related to the secondary state parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/ValueServer.html#computeDistribution()">computeDistribution()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/ValueServer.html" title="class in org.apache.commons.math3.random">ValueServer</a></dt>
<dd>
<div class="block">Computes the empirical distribution using values from the file
 in <code>valuesFileURL</code>, using the default number of bins.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/ValueServer.html#computeDistribution(int)">computeDistribution(int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/ValueServer.html" title="class in org.apache.commons.math3.random">ValueServer</a></dt>
<dd>
<div class="block">Computes the empirical distribution using values from the file
 in <code>valuesFileURL</code> and <code>binCount</code> bins.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/DividedDifferenceInterpolator.html#computeDividedDifference(double[], double[])">computeDividedDifference(double[], double[])</a></span> - Static method in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/DividedDifferenceInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">DividedDifferenceInterpolator</a></dt>
<dd>
<div class="block">Return a copy of the divided difference array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#computeExp(org.apache.commons.math3.dfp.Dfp, org.apache.commons.math3.dfp.Dfp)">computeExp(Dfp, Dfp)</a></span> - Static method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Compute exp(a).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html#computeGeometricalProperties()">computeGeometricalProperties()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">IntervalsSet</a></dt>
<dd>
<div class="block">Compute some geometrical properties.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/PolyhedronsSet.html#computeGeometricalProperties()">computeGeometricalProperties()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/PolyhedronsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">PolyhedronsSet</a></dt>
<dd>
<div class="block">Compute some geometrical properties.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/PolygonsSet.html#computeGeometricalProperties()">computeGeometricalProperties()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/PolygonsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">PolygonsSet</a></dt>
<dd>
<div class="block">Compute some geometrical properties.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html#computeGeometricalProperties()">computeGeometricalProperties()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractRegion</a></dt>
<dd>
<div class="block">Compute some geometrical properties.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/ArcsSet.html#computeGeometricalProperties()">computeGeometricalProperties()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/ArcsSet.html" title="class in org.apache.commons.math3.geometry.spherical.oned">ArcsSet</a></dt>
<dd>
<div class="block">Compute some geometrical properties.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/SphericalPolygonsSet.html#computeGeometricalProperties()">computeGeometricalProperties()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/SphericalPolygonsSet.html" title="class in org.apache.commons.math3.geometry.spherical.twod">SphericalPolygonsSet</a></dt>
<dd>
<div class="block">Compute some geometrical properties.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/MapUtils.html#computeHitHistogram(java.lang.Iterable, org.apache.commons.math3.ml.neuralnet.twod.NeuronSquareMesh2D, org.apache.commons.math3.ml.distance.DistanceMeasure)">computeHitHistogram(Iterable&lt;double[]&gt;, NeuronSquareMesh2D, DistanceMeasure)</a></span> - Static method in class org.apache.commons.math3.ml.neuralnet.<a href="./org/apache/commons/math3/ml/neuralnet/MapUtils.html" title="class in org.apache.commons.math3.ml.neuralnet">MapUtils</a></dt>
<dd>
<div class="block">Computes the "hit" histogram of a two-dimensional map.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#computeInterpolatedStateAndDerivatives(double, double)">computeInterpolatedStateAndDerivatives(double, double)</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">Compute the state and derivatives at the interpolated time.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/NordsieckStepInterpolator.html#computeInterpolatedStateAndDerivatives(double, double)">computeInterpolatedStateAndDerivatives(double, double)</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/NordsieckStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">NordsieckStepInterpolator</a></dt>
<dd>
<div class="block">Compute the state and derivatives at the interpolated time.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/JacobianMultivariateVectorOptimizer.html#computeJacobian(double[])">computeJacobian(double[])</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.vector.<a href="./org/apache/commons/math3/optim/nonlinear/vector/JacobianMultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector">JacobianMultivariateVectorOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Computes the Jacobian matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#computeLn(org.apache.commons.math3.dfp.Dfp, org.apache.commons.math3.dfp.Dfp, org.apache.commons.math3.dfp.Dfp)">computeLn(Dfp, Dfp, Dfp)</a></span> - Static method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Compute ln(a).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/MainStateJacobianProvider.html#computeMainStateJacobian(double, double[], double[], double[][])">computeMainStateJacobian(double, double[], double[], double[][])</a></span> - Method in interface org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/MainStateJacobianProvider.html" title="interface in org.apache.commons.math3.ode">MainStateJacobianProvider</a></dt>
<dd>
<div class="block">Compute the jacobian matrix of ODE with respect to main state.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/GradientMultivariateOptimizer.html#computeObjectiveGradient(double[])">computeObjectiveGradient(double[])</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/GradientMultivariateOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar">GradientMultivariateOptimizer</a></dt>
<dd>
<div class="block">Compute the gradient vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractDifferentiableOptimizer.html#computeObjectiveGradient(double[])">computeObjectiveGradient(double[])</a></span> - Method in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractDifferentiableOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractDifferentiableOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Compute the gradient vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractScalarDifferentiableOptimizer.html#computeObjectiveGradient(double[])">computeObjectiveGradient(double[])</a></span> - Method in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractScalarDifferentiableOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractScalarDifferentiableOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Compute the gradient vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html#computeObjectiveValue(double)">computeObjectiveValue(double)</a></span> - Method in class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">BaseAbstractUnivariateIntegrator</a></dt>
<dd>
<div class="block">Compute the objective function value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html#computeObjectiveValue(double)">computeObjectiveValue(double)</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BaseAbstractUnivariateSolver</a></dt>
<dd>
<div class="block">Compute the objective function value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/MultivariateOptimizer.html#computeObjectiveValue(double[])">computeObjectiveValue(double[])</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/MultivariateOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar">MultivariateOptimizer</a></dt>
<dd>
<div class="block">Computes the objective function value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/MultivariateVectorOptimizer.html#computeObjectiveValue(double[])">computeObjectiveValue(double[])</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.vector.<a href="./org/apache/commons/math3/optim/nonlinear/vector/MultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector">MultivariateVectorOptimizer</a></dt>
<dd>
<div class="block">Computes the objective function value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/UnivariateOptimizer.html#computeObjectiveValue(double)">computeObjectiveValue(double)</a></span> - Method in class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/UnivariateOptimizer.html" title="class in org.apache.commons.math3.optim.univariate">UnivariateOptimizer</a></dt>
<dd>
<div class="block">Computes the objective function value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html#computeObjectiveValue(double[])">computeObjectiveValue(double[])</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Compute the objective function value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html#computeObjectiveValue(double[])">computeObjectiveValue(double[])</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateVectorOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Compute the objective function value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/BaseAbstractUnivariateOptimizer.html#computeObjectiveValue(double)">computeObjectiveValue(double)</a></span> - Method in class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/BaseAbstractUnivariateOptimizer.html" title="class in org.apache.commons.math3.optimization.univariate">BaseAbstractUnivariateOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Compute the objective function value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/AbstractUnivariateDifferentiableSolver.html#computeObjectiveValueAndDerivative(double)">computeObjectiveValueAndDerivative(double)</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/AbstractUnivariateDifferentiableSolver.html" title="class in org.apache.commons.math3.analysis.solvers">AbstractUnivariateDifferentiableSolver</a></dt>
<dd>
<div class="block">Compute the objective function value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ParameterJacobianProvider.html#computeParameterJacobian(double, double[], double[], java.lang.String, double[])">computeParameterJacobian(double, double[], double[], String, double[])</a></span> - Method in interface org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ParameterJacobianProvider.html" title="interface in org.apache.commons.math3.ode">ParameterJacobianProvider</a></dt>
<dd>
<div class="block">Compute the Jacobian matrix of ODE with respect to one parameter.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/MapUtils.html#computeQuantizationError(java.lang.Iterable, java.lang.Iterable, org.apache.commons.math3.ml.distance.DistanceMeasure)">computeQuantizationError(Iterable&lt;double[]&gt;, Iterable&lt;Neuron&gt;, DistanceMeasure)</a></span> - Static method in class org.apache.commons.math3.ml.neuralnet.<a href="./org/apache/commons/math3/ml/neuralnet/MapUtils.html" title="class in org.apache.commons.math3.ml.neuralnet">MapUtils</a></dt>
<dd>
<div class="block">Computes the quantization error.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/AbstractLeastSquaresOptimizer.html#computeResiduals(double[])">computeResiduals(double[])</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.vector.jacobian.<a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector.jacobian">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Computes the residuals.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#computeResiduals(double[])">computeResiduals(double[])</a></span> - Method in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Computes the residuals.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/RootsOfUnity.html#computeRoots(int)">computeRoots(int)</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/RootsOfUnity.html" title="class in org.apache.commons.math3.complex">RootsOfUnity</a></dt>
<dd>
<div class="block">
 Computes the <code>n</code>-th roots of unity.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/gauss/BaseRuleFactory.html#computeRule(int)">computeRule(int)</a></span> - Method in class org.apache.commons.math3.analysis.integration.gauss.<a href="./org/apache/commons/math3/analysis/integration/gauss/BaseRuleFactory.html" title="class in org.apache.commons.math3.analysis.integration.gauss">BaseRuleFactory</a></dt>
<dd>
<div class="block">Computes the rule for the given order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/gauss/HermiteRuleFactory.html#computeRule(int)">computeRule(int)</a></span> - Method in class org.apache.commons.math3.analysis.integration.gauss.<a href="./org/apache/commons/math3/analysis/integration/gauss/HermiteRuleFactory.html" title="class in org.apache.commons.math3.analysis.integration.gauss">HermiteRuleFactory</a></dt>
<dd>
<div class="block">Computes the rule for the given order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/gauss/LegendreHighPrecisionRuleFactory.html#computeRule(int)">computeRule(int)</a></span> - Method in class org.apache.commons.math3.analysis.integration.gauss.<a href="./org/apache/commons/math3/analysis/integration/gauss/LegendreHighPrecisionRuleFactory.html" title="class in org.apache.commons.math3.analysis.integration.gauss">LegendreHighPrecisionRuleFactory</a></dt>
<dd>
<div class="block">Computes the rule for the given order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/gauss/LegendreRuleFactory.html#computeRule(int)">computeRule(int)</a></span> - Method in class org.apache.commons.math3.analysis.integration.gauss.<a href="./org/apache/commons/math3/analysis/integration/gauss/LegendreRuleFactory.html" title="class in org.apache.commons.math3.analysis.integration.gauss">LegendreRuleFactory</a></dt>
<dd>
<div class="block">Computes the rule for the given order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/SecondOrderDifferentialEquations.html#computeSecondDerivatives(double, double[], double[], double[])">computeSecondDerivatives(double, double[], double[], double[])</a></span> - Method in interface org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/SecondOrderDifferentialEquations.html" title="interface in org.apache.commons.math3.ode">SecondOrderDifferentialEquations</a></dt>
<dd>
<div class="block">Get the current time derivative of the state vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/AbstractLeastSquaresOptimizer.html#computeSigma(double[], double)">computeSigma(double[], double)</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.vector.jacobian.<a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector.jacobian">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Computes an estimate of the standard deviation of the parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#computeSigma(double[], double)">computeSigma(double[], double)</a></span> - Method in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Computes an estimate of the standard deviation of the parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/MultistepIntegrator.html#computeStepGrowShrinkFactor(double)">computeStepGrowShrinkFactor(double)</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/MultistepIntegrator.html" title="class in org.apache.commons.math3.ode">MultistepIntegrator</a></dt>
<dd>
<div class="block">Compute step grow/shrink factor according to normalized error.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/MapUtils.html#computeTopographicError(java.lang.Iterable, org.apache.commons.math3.ml.neuralnet.Network, org.apache.commons.math3.ml.distance.DistanceMeasure)">computeTopographicError(Iterable&lt;double[]&gt;, Network, DistanceMeasure)</a></span> - Static method in class org.apache.commons.math3.ml.neuralnet.<a href="./org/apache/commons/math3/ml/neuralnet/MapUtils.html" title="class in org.apache.commons.math3.ml.neuralnet">MapUtils</a></dt>
<dd>
<div class="block">Computes the topographic error.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/MapUtils.html#computeU(org.apache.commons.math3.ml.neuralnet.twod.NeuronSquareMesh2D, org.apache.commons.math3.ml.distance.DistanceMeasure)">computeU(NeuronSquareMesh2D, DistanceMeasure)</a></span> - Static method in class org.apache.commons.math3.ml.neuralnet.<a href="./org/apache/commons/math3/ml/neuralnet/MapUtils.html" title="class in org.apache.commons.math3.ml.neuralnet">MapUtils</a></dt>
<dd>
<div class="block">Computes the <a href="http://en.wikipedia.org/wiki/U-Matrix">
  U-matrix</a> of a two-dimensional map.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/AbstractLeastSquaresOptimizer.html#computeWeightedJacobian(double[])">computeWeightedJacobian(double[])</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.vector.jacobian.<a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector.jacobian">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Computes the weighted Jacobian matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#computeWeightedJacobian(double[])">computeWeightedJacobian(double[])</a></span> - Method in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Computes the Jacobian matrix.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/interval/ConfidenceInterval.html" title="class in org.apache.commons.math3.stat.interval"><span class="strong">ConfidenceInterval</span></a> - Class in <a href="./org/apache/commons/math3/stat/interval/package-summary.html">org.apache.commons.math3.stat.interval</a></dt>
<dd>
<div class="block">Represents an interval estimate of a population parameter.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/interval/ConfidenceInterval.html#ConfidenceInterval(double, double, double)">ConfidenceInterval(double, double, double)</a></span> - Constructor for class org.apache.commons.math3.stat.interval.<a href="./org/apache/commons/math3/stat/interval/ConfidenceInterval.html" title="class in org.apache.commons.math3.stat.interval">ConfidenceInterval</a></dt>
<dd>
<div class="block">Create a confidence interval with the given bounds and confidence level.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#conjugate()">conjugate()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Return the conjugate of this complex number.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/ConjugateGradient.html" title="class in org.apache.commons.math3.linear"><span class="strong">ConjugateGradient</span></a> - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">
 This is an implementation of the conjugate gradient method for
 <a href="./org/apache/commons/math3/linear/RealLinearOperator.html" title="class in org.apache.commons.math3.linear"><code>RealLinearOperator</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ConjugateGradient.html#ConjugateGradient(int, double, boolean)">ConjugateGradient(int, double, boolean)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ConjugateGradient.html" title="class in org.apache.commons.math3.linear">ConjugateGradient</a></dt>
<dd>
<div class="block">Creates a new instance of this class, with <a href="./org/apache/commons/math3/linear/#stopcrit">default
 stopping criterion</a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ConjugateGradient.html#ConjugateGradient(org.apache.commons.math3.util.IterationManager, double, boolean)">ConjugateGradient(IterationManager, double, boolean)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ConjugateGradient.html" title="class in org.apache.commons.math3.linear">ConjugateGradient</a></dt>
<dd>
<div class="block">Creates a new instance of this class, with <a href="./org/apache/commons/math3/linear/#stopcrit">default
 stopping criterion</a> and custom iteration manager.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/general/ConjugateGradientFormula.html" title="enum in org.apache.commons.math3.optimization.general"><span class="strong">ConjugateGradientFormula</span></a> - Enum in <a href="./org/apache/commons/math3/optimization/general/package-summary.html">org.apache.commons.math3.optimization.general</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Constant.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Constant</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Constant function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Constant.html#Constant(double)">Constant(double)</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Constant.html" title="class in org.apache.commons.math3.analysis.function">Constant</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/ValueServer.html#CONSTANT_MODE">CONSTANT_MODE</a></span> - Static variable in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/ValueServer.html" title="class in org.apache.commons.math3.random">ValueServer</a></dt>
<dd>
<div class="block">Always return mu</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/enclosing/EnclosingBall.html#contains(P)">contains(P)</a></span> - Method in class org.apache.commons.math3.geometry.enclosing.<a href="./org/apache/commons/math3/geometry/enclosing/EnclosingBall.html" title="class in org.apache.commons.math3.geometry.enclosing">EnclosingBall</a></dt>
<dd>
<div class="block">Check if a point is within the ball or at boundary.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/enclosing/EnclosingBall.html#contains(P, double)">contains(P, double)</a></span> - Method in class org.apache.commons.math3.geometry.enclosing.<a href="./org/apache/commons/math3/geometry/enclosing/EnclosingBall.html" title="class in org.apache.commons.math3.geometry.enclosing">EnclosingBall</a></dt>
<dd>
<div class="block">Check if a point is within an enlarged ball or at boundary.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html#contains(org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">contains(Vector3D)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Line</a></dt>
<dd>
<div class="block">Check if the instance contains a point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#contains(org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">contains(Vector3D)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block">Check if the instance contains a point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#contains(org.apache.commons.math3.geometry.euclidean.twod.Vector2D)">contains(Vector2D)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Line</a></dt>
<dd>
<div class="block">Check if the line contains a point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html#contains(org.apache.commons.math3.geometry.partitioning.Region)">contains(Region&lt;S&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractRegion</a></dt>
<dd>
<div class="block">Check if the instance entirely contains another region.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/Region.html#contains(org.apache.commons.math3.geometry.partitioning.Region)">contains(Region&lt;S&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/Region.html" title="interface in org.apache.commons.math3.geometry.partitioning">Region</a></dt>
<dd>
<div class="block">Check if the instance entirely contains another region.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/TransformerMap.html#containsClass(java.lang.Class)">containsClass(Class&lt;?&gt;)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/TransformerMap.html" title="class in org.apache.commons.math3.util">TransformerMap</a></dt>
<dd>
<div class="block">Tests if a Class is present in the TransformerMap.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.html#containsKey(int)">containsKey(int)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.html" title="class in org.apache.commons.math3.util">OpenIntToDoubleHashMap</a></dt>
<dd>
<div class="block">Check if a value is associated with a key.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.html#containsKey(int)">containsKey(int)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.html" title="class in org.apache.commons.math3.util">OpenIntToFieldHashMap</a></dt>
<dd>
<div class="block">Check if a value is associated with a key.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/TransformerMap.html#containsTransformer(org.apache.commons.math3.util.NumberTransformer)">containsTransformer(NumberTransformer)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/TransformerMap.html" title="class in org.apache.commons.math3.util">TransformerMap</a></dt>
<dd>
<div class="block">Tests if a NumberTransformer is present in the TransformerMap.</div>
</dd>
<dt><a href="./org/apache/commons/math3/util/ContinuedFraction.html" title="class in org.apache.commons.math3.util"><span class="strong">ContinuedFraction</span></a> - Class in <a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a></dt>
<dd>
<div class="block">Provides a generic means to evaluate continued fractions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ContinuedFraction.html#ContinuedFraction()">ContinuedFraction()</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ContinuedFraction.html" title="class in org.apache.commons.math3.util">ContinuedFraction</a></dt>
<dd>
<div class="block">Default constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/ContinuousOutputModel.html" title="class in org.apache.commons.math3.ode"><span class="strong">ContinuousOutputModel</span></a> - Class in <a href="./org/apache/commons/math3/ode/package-summary.html">org.apache.commons.math3.ode</a></dt>
<dd>
<div class="block">This class stores all information provided by an ODE integrator
 during the integration process and build a continuous model of the
 solution from this.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ContinuousOutputModel.html#ContinuousOutputModel()">ContinuousOutputModel()</a></span> - Constructor for class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ContinuousOutputModel.html" title="class in org.apache.commons.math3.ode">ContinuousOutputModel</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#contract()">contract()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block">Contracts the storage array to the (size of the element set) + 1 - to
 avoid a zero length array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/AbstractConvergenceChecker.html#converged(int, PAIR, PAIR)">converged(int, PAIR, PAIR)</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/AbstractConvergenceChecker.html" title="class in org.apache.commons.math3.optim">AbstractConvergenceChecker</a></dt>
<dd>
<div class="block">Check if the optimization algorithm has converged.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/ConvergenceChecker.html#converged(int, PAIR, PAIR)">converged(int, PAIR, PAIR)</a></span> - Method in interface org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/ConvergenceChecker.html" title="interface in org.apache.commons.math3.optim">ConvergenceChecker</a></dt>
<dd>
<div class="block">Check if the optimization algorithm has converged.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/SimplePointChecker.html#converged(int, PAIR, PAIR)">converged(int, PAIR, PAIR)</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/SimplePointChecker.html" title="class in org.apache.commons.math3.optim">SimplePointChecker</a></dt>
<dd>
<div class="block">Check if the optimization algorithm has converged considering the
 last two points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/SimpleValueChecker.html#converged(int, org.apache.commons.math3.optim.PointValuePair, org.apache.commons.math3.optim.PointValuePair)">converged(int, PointValuePair, PointValuePair)</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/SimpleValueChecker.html" title="class in org.apache.commons.math3.optim">SimpleValueChecker</a></dt>
<dd>
<div class="block">Check if the optimization algorithm has converged considering the
 last two points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/SimpleVectorValueChecker.html#converged(int, org.apache.commons.math3.optim.PointVectorValuePair, org.apache.commons.math3.optim.PointVectorValuePair)">converged(int, PointVectorValuePair, PointVectorValuePair)</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/SimpleVectorValueChecker.html" title="class in org.apache.commons.math3.optim">SimpleVectorValueChecker</a></dt>
<dd>
<div class="block">Check if the optimization algorithm has converged considering the
 last two points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/SimpleUnivariateValueChecker.html#converged(int, org.apache.commons.math3.optim.univariate.UnivariatePointValuePair, org.apache.commons.math3.optim.univariate.UnivariatePointValuePair)">converged(int, UnivariatePointValuePair, UnivariatePointValuePair)</a></span> - Method in class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/SimpleUnivariateValueChecker.html" title="class in org.apache.commons.math3.optim.univariate">SimpleUnivariateValueChecker</a></dt>
<dd>
<div class="block">Check if the optimization algorithm has converged considering the
 last two points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/AbstractConvergenceChecker.html#converged(int, PAIR, PAIR)">converged(int, PAIR, PAIR)</a></span> - Method in class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/AbstractConvergenceChecker.html" title="class in org.apache.commons.math3.optimization">AbstractConvergenceChecker</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Check if the optimization algorithm has converged.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/ConvergenceChecker.html#converged(int, PAIR, PAIR)">converged(int, PAIR, PAIR)</a></span> - Method in interface org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/ConvergenceChecker.html" title="interface in org.apache.commons.math3.optimization">ConvergenceChecker</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Check if the optimization algorithm has converged.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/SimplePointChecker.html#converged(int, PAIR, PAIR)">converged(int, PAIR, PAIR)</a></span> - Method in class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/SimplePointChecker.html" title="class in org.apache.commons.math3.optimization">SimplePointChecker</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Check if the optimization algorithm has converged considering the
 last two points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/SimpleValueChecker.html#converged(int, org.apache.commons.math3.optimization.PointValuePair, org.apache.commons.math3.optimization.PointValuePair)">converged(int, PointValuePair, PointValuePair)</a></span> - Method in class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/SimpleValueChecker.html" title="class in org.apache.commons.math3.optimization">SimpleValueChecker</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Check if the optimization algorithm has converged considering the
 last two points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/SimpleVectorValueChecker.html#converged(int, org.apache.commons.math3.optimization.PointVectorValuePair, org.apache.commons.math3.optimization.PointVectorValuePair)">converged(int, PointVectorValuePair, PointVectorValuePair)</a></span> - Method in class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/SimpleVectorValueChecker.html" title="class in org.apache.commons.math3.optimization">SimpleVectorValueChecker</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Check if the optimization algorithm has converged considering the
 last two points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/SimpleUnivariateValueChecker.html#converged(int, org.apache.commons.math3.optimization.univariate.UnivariatePointValuePair, org.apache.commons.math3.optimization.univariate.UnivariatePointValuePair)">converged(int, UnivariatePointValuePair, UnivariatePointValuePair)</a></span> - Method in class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/SimpleUnivariateValueChecker.html" title="class in org.apache.commons.math3.optimization.univariate">SimpleUnivariateValueChecker</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Check if the optimization algorithm has converged considering the
 last two points.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/ConvergenceChecker.html" title="interface in org.apache.commons.math3.optim"><span class="strong">ConvergenceChecker</span></a>&lt;<a href="./org/apache/commons/math3/optim/ConvergenceChecker.html" title="type parameter in ConvergenceChecker">PAIR</a>&gt; - Interface in <a href="./org/apache/commons/math3/optim/package-summary.html">org.apache.commons.math3.optim</a></dt>
<dd>
<div class="block">This interface specifies how to check if an optimization algorithm has
 converged.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/ConvergenceChecker.html" title="interface in org.apache.commons.math3.optimization"><span class="strong">ConvergenceChecker</span></a>&lt;<a href="./org/apache/commons/math3/optimization/ConvergenceChecker.html" title="type parameter in ConvergenceChecker">PAIR</a>&gt; - Interface in <a href="./org/apache/commons/math3/optimization/package-summary.html">org.apache.commons.math3.optimization</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/exception/ConvergenceException.html" title="class in org.apache.commons.math3.exception"><span class="strong">ConvergenceException</span></a> - Exception in <a href="./org/apache/commons/math3/exception/package-summary.html">org.apache.commons.math3.exception</a></dt>
<dd>
<div class="block">Error thrown when a numerical computation can not be performed because the
 numerical result failed to converge to a finite value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/ConvergenceException.html#ConvergenceException()">ConvergenceException()</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/ConvergenceException.html" title="class in org.apache.commons.math3.exception">ConvergenceException</a></dt>
<dd>
<div class="block">Construct the exception.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/ConvergenceException.html#ConvergenceException(org.apache.commons.math3.exception.util.Localizable, java.lang.Object...)">ConvergenceException(Localizable, Object...)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/ConvergenceException.html" title="class in org.apache.commons.math3.exception">ConvergenceException</a></dt>
<dd>
<div class="block">Construct the exception with a specific context and arguments.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/ComplexUtils.html#convertToComplex(double[])">convertToComplex(double[])</a></span> - Static method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/ComplexUtils.html" title="class in org.apache.commons.math3.complex">ComplexUtils</a></dt>
<dd>
<div class="block">Convert an array of primitive doubles to an array of <code>Complex</code> objects.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomGeneratorFactory.html#convertToLong(int[])">convertToLong(int[])</a></span> - Static method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomGeneratorFactory.html" title="class in org.apache.commons.math3.random">RandomGeneratorFactory</a></dt>
<dd>
<div class="block">Converts seed from one representation to another.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/hull/ConvexHull.html" title="interface in org.apache.commons.math3.geometry.hull"><span class="strong">ConvexHull</span></a>&lt;<a href="./org/apache/commons/math3/geometry/hull/ConvexHull.html" title="type parameter in ConvexHull">S</a> extends <a href="./org/apache/commons/math3/geometry/Space.html" title="interface in org.apache.commons.math3.geometry">Space</a>,<a href="./org/apache/commons/math3/geometry/hull/ConvexHull.html" title="type parameter in ConvexHull">P</a> extends <a href="./org/apache/commons/math3/geometry/Point.html" title="interface in org.apache.commons.math3.geometry">Point</a>&lt;<a href="./org/apache/commons/math3/geometry/hull/ConvexHull.html" title="type parameter in ConvexHull">S</a>&gt;&gt; - Interface in <a href="./org/apache/commons/math3/geometry/hull/package-summary.html">org.apache.commons.math3.geometry.hull</a></dt>
<dd>
<div class="block">This class represents a convex hull.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/twod/hull/ConvexHull2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod.hull"><span class="strong">ConvexHull2D</span></a> - Class in <a href="./org/apache/commons/math3/geometry/euclidean/twod/hull/package-summary.html">org.apache.commons.math3.geometry.euclidean.twod.hull</a></dt>
<dd>
<div class="block">This class represents a convex hull in an two-dimensional euclidean space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/hull/ConvexHull2D.html#ConvexHull2D(org.apache.commons.math3.geometry.euclidean.twod.Vector2D[], double)">ConvexHull2D(Vector2D[], double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.twod.hull.<a href="./org/apache/commons/math3/geometry/euclidean/twod/hull/ConvexHull2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod.hull">ConvexHull2D</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/hull/ConvexHullGenerator.html" title="interface in org.apache.commons.math3.geometry.hull"><span class="strong">ConvexHullGenerator</span></a>&lt;<a href="./org/apache/commons/math3/geometry/hull/ConvexHullGenerator.html" title="type parameter in ConvexHullGenerator">S</a> extends <a href="./org/apache/commons/math3/geometry/Space.html" title="interface in org.apache.commons.math3.geometry">Space</a>,<a href="./org/apache/commons/math3/geometry/hull/ConvexHullGenerator.html" title="type parameter in ConvexHullGenerator">P</a> extends <a href="./org/apache/commons/math3/geometry/Point.html" title="interface in org.apache.commons.math3.geometry">Point</a>&lt;<a href="./org/apache/commons/math3/geometry/hull/ConvexHullGenerator.html" title="type parameter in ConvexHullGenerator">S</a>&gt;&gt; - Interface in <a href="./org/apache/commons/math3/geometry/hull/package-summary.html">org.apache.commons.math3.geometry.hull</a></dt>
<dd>
<div class="block">Interface for convex hull generators.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/twod/hull/ConvexHullGenerator2D.html" title="interface in org.apache.commons.math3.geometry.euclidean.twod.hull"><span class="strong">ConvexHullGenerator2D</span></a> - Interface in <a href="./org/apache/commons/math3/geometry/euclidean/twod/hull/package-summary.html">org.apache.commons.math3.geometry.euclidean.twod.hull</a></dt>
<dd>
<div class="block">Interface for convex hull generators in the two-dimensional euclidean space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#convolve(double[], double[])">convolve(double[], double[])</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Calculates the <a href="http://en.wikipedia.org/wiki/Convolution">
 convolution</a> between two sequences.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Make a (deep) copy of this.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Returns a (deep) copy of this.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowFieldMatrix</a></dt>
<dd>
<div class="block">Make a (deep) copy of this.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowRealMatrix</a></dt>
<dd>
<div class="block">Returns a (deep) copy of this.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Returns a (deep) copy of this.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Returns a (deep) copy of this vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Make a (deep) copy of this.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Returns a (deep) copy of this.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DiagonalMatrix.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DiagonalMatrix.html" title="class in org.apache.commons.math3.linear">DiagonalMatrix</a></dt>
<dd>
<div class="block">Returns a (deep) copy of this.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#copy()">copy()</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Make a (deep) copy of this.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVector.html#copy()">copy()</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVector.html" title="interface in org.apache.commons.math3.linear">FieldVector</a></dt>
<dd>
<div class="block">Returns a (deep) copy of this.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealMatrix.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealMatrix.html" title="class in org.apache.commons.math3.linear">OpenMapRealMatrix</a></dt>
<dd>
<div class="block">Returns a (deep) copy of this.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Returns a (deep) copy of this vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#copy()">copy()</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Returns a (deep) copy of this.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Returns a (deep) copy of this vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldMatrix.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldMatrix.html" title="class in org.apache.commons.math3.linear">SparseFieldMatrix</a></dt>
<dd>
<div class="block">Make a (deep) copy of this.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Returns a (deep) copy of this.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">Copy the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/StepInterpolator.html#copy()">copy()</a></span> - Method in interface org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/StepInterpolator.html" title="interface in org.apache.commons.math3.ode.sampling">StepInterpolator</a></dt>
<dd>
<div class="block">Copy the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AbstractStorelessUnivariateStatistic.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AbstractStorelessUnivariateStatistic.html" title="class in org.apache.commons.math3.stat.descriptive">AbstractStorelessUnivariateStatistic</a></dt>
<dd>
<div class="block">Returns a copy of the statistic with the same internal state.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AbstractUnivariateStatistic.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AbstractUnivariateStatistic.html" title="class in org.apache.commons.math3.stat.descriptive">AbstractUnivariateStatistic</a></dt>
<dd>
<div class="block">Returns a copy of the statistic with the same internal state.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Returns a copy of this DescriptiveStatistics instance with the same internal state.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#copy(org.apache.commons.math3.stat.descriptive.DescriptiveStatistics, org.apache.commons.math3.stat.descriptive.DescriptiveStatistics)">copy(DescriptiveStatistics, DescriptiveStatistics)</a></span> - Static method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Copies source to dest.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/GeometricMean.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/GeometricMean.html" title="class in org.apache.commons.math3.stat.descriptive.moment">GeometricMean</a></dt>
<dd>
<div class="block">Returns a copy of the statistic with the same internal state.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/GeometricMean.html#copy(org.apache.commons.math3.stat.descriptive.moment.GeometricMean, org.apache.commons.math3.stat.descriptive.moment.GeometricMean)">copy(GeometricMean, GeometricMean)</a></span> - Static method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/GeometricMean.html" title="class in org.apache.commons.math3.stat.descriptive.moment">GeometricMean</a></dt>
<dd>
<div class="block">Copies source to dest.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Kurtosis.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Kurtosis.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Kurtosis</a></dt>
<dd>
<div class="block">Returns a copy of the statistic with the same internal state.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Kurtosis.html#copy(org.apache.commons.math3.stat.descriptive.moment.Kurtosis, org.apache.commons.math3.stat.descriptive.moment.Kurtosis)">copy(Kurtosis, Kurtosis)</a></span> - Static method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Kurtosis.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Kurtosis</a></dt>
<dd>
<div class="block">Copies source to dest.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Mean.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Mean.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Mean</a></dt>
<dd>
<div class="block">Returns a copy of the statistic with the same internal state.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Mean.html#copy(org.apache.commons.math3.stat.descriptive.moment.Mean, org.apache.commons.math3.stat.descriptive.moment.Mean)">copy(Mean, Mean)</a></span> - Static method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Mean.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Mean</a></dt>
<dd>
<div class="block">Copies source to dest.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/SecondMoment.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/SecondMoment.html" title="class in org.apache.commons.math3.stat.descriptive.moment">SecondMoment</a></dt>
<dd>
<div class="block">Returns a copy of the statistic with the same internal state.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/SecondMoment.html#copy(org.apache.commons.math3.stat.descriptive.moment.SecondMoment, org.apache.commons.math3.stat.descriptive.moment.SecondMoment)">copy(SecondMoment, SecondMoment)</a></span> - Static method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/SecondMoment.html" title="class in org.apache.commons.math3.stat.descriptive.moment">SecondMoment</a></dt>
<dd>
<div class="block">Copies source to dest.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">SemiVariance</a></dt>
<dd>
<div class="block">Returns a copy of the statistic with the same internal state.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html#copy(org.apache.commons.math3.stat.descriptive.moment.SemiVariance, org.apache.commons.math3.stat.descriptive.moment.SemiVariance)">copy(SemiVariance, SemiVariance)</a></span> - Static method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">SemiVariance</a></dt>
<dd>
<div class="block">Copies source to dest.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Skewness.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Skewness.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Skewness</a></dt>
<dd>
<div class="block">Returns a copy of the statistic with the same internal state.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Skewness.html#copy(org.apache.commons.math3.stat.descriptive.moment.Skewness, org.apache.commons.math3.stat.descriptive.moment.Skewness)">copy(Skewness, Skewness)</a></span> - Static method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Skewness.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Skewness</a></dt>
<dd>
<div class="block">Copies source to dest.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html" title="class in org.apache.commons.math3.stat.descriptive.moment">StandardDeviation</a></dt>
<dd>
<div class="block">Returns a copy of the statistic with the same internal state.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html#copy(org.apache.commons.math3.stat.descriptive.moment.StandardDeviation, org.apache.commons.math3.stat.descriptive.moment.StandardDeviation)">copy(StandardDeviation, StandardDeviation)</a></span> - Static method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html" title="class in org.apache.commons.math3.stat.descriptive.moment">StandardDeviation</a></dt>
<dd>
<div class="block">Copies source to dest.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Variance</a></dt>
<dd>
<div class="block">Returns a copy of the statistic with the same internal state.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html#copy(org.apache.commons.math3.stat.descriptive.moment.Variance, org.apache.commons.math3.stat.descriptive.moment.Variance)">copy(Variance, Variance)</a></span> - Static method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Variance</a></dt>
<dd>
<div class="block">Copies source to dest.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/rank/Max.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.rank.<a href="./org/apache/commons/math3/stat/descriptive/rank/Max.html" title="class in org.apache.commons.math3.stat.descriptive.rank">Max</a></dt>
<dd>
<div class="block">Returns a copy of the statistic with the same internal state.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/rank/Max.html#copy(org.apache.commons.math3.stat.descriptive.rank.Max, org.apache.commons.math3.stat.descriptive.rank.Max)">copy(Max, Max)</a></span> - Static method in class org.apache.commons.math3.stat.descriptive.rank.<a href="./org/apache/commons/math3/stat/descriptive/rank/Max.html" title="class in org.apache.commons.math3.stat.descriptive.rank">Max</a></dt>
<dd>
<div class="block">Copies source to dest.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/rank/Min.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.rank.<a href="./org/apache/commons/math3/stat/descriptive/rank/Min.html" title="class in org.apache.commons.math3.stat.descriptive.rank">Min</a></dt>
<dd>
<div class="block">Returns a copy of the statistic with the same internal state.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/rank/Min.html#copy(org.apache.commons.math3.stat.descriptive.rank.Min, org.apache.commons.math3.stat.descriptive.rank.Min)">copy(Min, Min)</a></span> - Static method in class org.apache.commons.math3.stat.descriptive.rank.<a href="./org/apache/commons/math3/stat/descriptive/rank/Min.html" title="class in org.apache.commons.math3.stat.descriptive.rank">Min</a></dt>
<dd>
<div class="block">Copies source to dest.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/rank/Percentile.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.rank.<a href="./org/apache/commons/math3/stat/descriptive/rank/Percentile.html" title="class in org.apache.commons.math3.stat.descriptive.rank">Percentile</a></dt>
<dd>
<div class="block">Returns a copy of the statistic with the same internal state.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/rank/Percentile.html#copy(org.apache.commons.math3.stat.descriptive.rank.Percentile, org.apache.commons.math3.stat.descriptive.rank.Percentile)">copy(Percentile, Percentile)</a></span> - Static method in class org.apache.commons.math3.stat.descriptive.rank.<a href="./org/apache/commons/math3/stat/descriptive/rank/Percentile.html" title="class in org.apache.commons.math3.stat.descriptive.rank">Percentile</a></dt>
<dd>
<div class="block">Copies source to dest.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StorelessUnivariateStatistic.html#copy()">copy()</a></span> - Method in interface org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StorelessUnivariateStatistic.html" title="interface in org.apache.commons.math3.stat.descriptive">StorelessUnivariateStatistic</a></dt>
<dd>
<div class="block">Returns a copy of the statistic with the same internal state.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/Product.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/Product.html" title="class in org.apache.commons.math3.stat.descriptive.summary">Product</a></dt>
<dd>
<div class="block">Returns a copy of the statistic with the same internal state.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/Product.html#copy(org.apache.commons.math3.stat.descriptive.summary.Product, org.apache.commons.math3.stat.descriptive.summary.Product)">copy(Product, Product)</a></span> - Static method in class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/Product.html" title="class in org.apache.commons.math3.stat.descriptive.summary">Product</a></dt>
<dd>
<div class="block">Copies source to dest.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/Sum.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/Sum.html" title="class in org.apache.commons.math3.stat.descriptive.summary">Sum</a></dt>
<dd>
<div class="block">Returns a copy of the statistic with the same internal state.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/Sum.html#copy(org.apache.commons.math3.stat.descriptive.summary.Sum, org.apache.commons.math3.stat.descriptive.summary.Sum)">copy(Sum, Sum)</a></span> - Static method in class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/Sum.html" title="class in org.apache.commons.math3.stat.descriptive.summary">Sum</a></dt>
<dd>
<div class="block">Copies source to dest.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfLogs.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfLogs.html" title="class in org.apache.commons.math3.stat.descriptive.summary">SumOfLogs</a></dt>
<dd>
<div class="block">Returns a copy of the statistic with the same internal state.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfLogs.html#copy(org.apache.commons.math3.stat.descriptive.summary.SumOfLogs, org.apache.commons.math3.stat.descriptive.summary.SumOfLogs)">copy(SumOfLogs, SumOfLogs)</a></span> - Static method in class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfLogs.html" title="class in org.apache.commons.math3.stat.descriptive.summary">SumOfLogs</a></dt>
<dd>
<div class="block">Copies source to dest.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfSquares.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfSquares.html" title="class in org.apache.commons.math3.stat.descriptive.summary">SumOfSquares</a></dt>
<dd>
<div class="block">Returns a copy of the statistic with the same internal state.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfSquares.html#copy(org.apache.commons.math3.stat.descriptive.summary.SumOfSquares, org.apache.commons.math3.stat.descriptive.summary.SumOfSquares)">copy(SumOfSquares, SumOfSquares)</a></span> - Static method in class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfSquares.html" title="class in org.apache.commons.math3.stat.descriptive.summary">SumOfSquares</a></dt>
<dd>
<div class="block">Copies source to dest.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">Returns a copy of this SummaryStatistics instance with the same internal state.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#copy(org.apache.commons.math3.stat.descriptive.SummaryStatistics, org.apache.commons.math3.stat.descriptive.SummaryStatistics)">copy(SummaryStatistics, SummaryStatistics)</a></span> - Static method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">Copies source to dest.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedDescriptiveStatistics</a></dt>
<dd>
<div class="block">Returns a copy of this SynchronizedDescriptiveStatistics instance with the
 same internal state.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html#copy(org.apache.commons.math3.stat.descriptive.SynchronizedDescriptiveStatistics, org.apache.commons.math3.stat.descriptive.SynchronizedDescriptiveStatistics)">copy(SynchronizedDescriptiveStatistics, SynchronizedDescriptiveStatistics)</a></span> - Static method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedDescriptiveStatistics</a></dt>
<dd>
<div class="block">Copies source to dest.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">Returns a copy of this SynchronizedSummaryStatistics instance with the
 same internal state.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#copy(org.apache.commons.math3.stat.descriptive.SynchronizedSummaryStatistics, org.apache.commons.math3.stat.descriptive.SynchronizedSummaryStatistics)">copy(SynchronizedSummaryStatistics, SynchronizedSummaryStatistics)</a></span> - Static method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">Copies source to dest.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/UnivariateStatistic.html#copy()">copy()</a></span> - Method in interface org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/UnivariateStatistic.html" title="interface in org.apache.commons.math3.stat.descriptive">UnivariateStatistic</a></dt>
<dd>
<div class="block">Returns a copy of the statistic with the same internal state.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#copy(org.apache.commons.math3.util.ResizableDoubleArray, org.apache.commons.math3.util.ResizableDoubleArray)">copy(ResizableDoubleArray, ResizableDoubleArray)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block">Copies source to dest, copying the underlying data, so dest is
 a new, independent copy of source.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#copy()">copy()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block">Returns a copy of the ResizableDoubleArray.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#copyOf(int[])">copyOf(int[])</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Creates a copy of the <code>source</code> array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#copyOf(double[])">copyOf(double[])</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Creates a copy of the <code>source</code> array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#copyOf(int[], int)">copyOf(int[], int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Creates a copy of the <code>source</code> array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#copyOf(double[], int)">copyOf(double[], int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Creates a copy of the <code>source</code> array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/OrientedPoint.html#copySelf()">copySelf()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/OrientedPoint.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">OrientedPoint</a></dt>
<dd>
<div class="block">Copy the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#copySelf()">copySelf()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block">Copy the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#copySelf()">copySelf()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Line</a></dt>
<dd>
<div class="block">Copy the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html#copySelf()">copySelf()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractRegion</a></dt>
<dd>
<div class="block">Copy the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractSubHyperplane.html#copySelf()">copySelf()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractSubHyperplane.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractSubHyperplane</a></dt>
<dd>
<div class="block">Copy the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html#copySelf()">copySelf()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html" title="class in org.apache.commons.math3.geometry.partitioning">BSPTree</a></dt>
<dd>
<div class="block">Copy the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/Hyperplane.html#copySelf()">copySelf()</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/Hyperplane.html" title="interface in org.apache.commons.math3.geometry.partitioning">Hyperplane</a></dt>
<dd>
<div class="block">Copy the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/Region.html#copySelf()">copySelf()</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/Region.html" title="interface in org.apache.commons.math3.geometry.partitioning">Region</a></dt>
<dd>
<div class="block">Copy the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/SubHyperplane.html#copySelf()">copySelf()</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/SubHyperplane.html" title="interface in org.apache.commons.math3.geometry.partitioning">SubHyperplane</a></dt>
<dd>
<div class="block">Copy the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/LimitAngle.html#copySelf()">copySelf()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/LimitAngle.html" title="class in org.apache.commons.math3.geometry.spherical.oned">LimitAngle</a></dt>
<dd>
<div class="block">Copy the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html#copySelf()">copySelf()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html" title="class in org.apache.commons.math3.geometry.spherical.twod">Circle</a></dt>
<dd>
<div class="block">Copy the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#copySign(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">copySign(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Returns the instance with the sign of the argument.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#copySign(double)">copySign(double)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Returns the instance with the sign of the argument.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#copySign(org.apache.commons.math3.analysis.differentiation.SparseGradient)">copySign(SparseGradient)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Returns the instance with the sign of the argument.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#copySign(double)">copySign(double)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Returns the instance with the sign of the argument.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#copysign(org.apache.commons.math3.dfp.Dfp, org.apache.commons.math3.dfp.Dfp)">copysign(Dfp, Dfp)</a></span> - Static method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Creates an instance that is the same as x except that it has the sign of y.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#copySign(org.apache.commons.math3.dfp.Dfp)">copySign(Dfp)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Returns the instance with the sign of the argument.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#copySign(double)">copySign(double)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Returns the instance with the sign of the argument.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#copySign(T)">copySign(T)</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Returns the instance with the sign of the argument.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#copySign(double)">copySign(double)</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Returns the instance with the sign of the argument.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#copySign(org.apache.commons.math3.util.Decimal64)">copySign(Decimal64)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Returns the instance with the sign of the argument.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#copySign(double)">copySign(double)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Returns the instance with the sign of the argument.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#copySign(double, double)">copySign(double, double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Returns the first argument with the sign of the second argument.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#copySign(float, float)">copySign(float, float)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Returns the first argument with the sign of the second argument.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathUtils.html#copySign(byte, byte)">copySign(byte, byte)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathUtils.html" title="class in org.apache.commons.math3.util">MathUtils</a></dt>
<dd>
<div class="block">Returns the first argument with the sign of the second argument.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathUtils.html#copySign(short, short)">copySign(short, short)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathUtils.html" title="class in org.apache.commons.math3.util">MathUtils</a></dt>
<dd>
<div class="block">Returns the first argument with the sign of the second argument.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathUtils.html#copySign(int, int)">copySign(int, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathUtils.html" title="class in org.apache.commons.math3.util">MathUtils</a></dt>
<dd>
<div class="block">Returns the first argument with the sign of the second argument.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathUtils.html#copySign(long, long)">copySign(long, long)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathUtils.html" title="class in org.apache.commons.math3.util">MathUtils</a></dt>
<dd>
<div class="block">Returns the first argument with the sign of the second argument.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#copySubMatrix(int, int, int, int, T[][])">copySubMatrix(int, int, int, int, T[][])</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Copy a submatrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#copySubMatrix(int[], int[], T[][])">copySubMatrix(int[], int[], T[][])</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Copy a submatrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#copySubMatrix(int, int, int, int, double[][])">copySubMatrix(int, int, int, int, double[][])</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Copy a submatrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#copySubMatrix(int[], int[], double[][])">copySubMatrix(int[], int[], double[][])</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Copy a submatrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#copySubMatrix(int, int, int, int, T[][])">copySubMatrix(int, int, int, int, T[][])</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Copy a submatrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#copySubMatrix(int[], int[], T[][])">copySubMatrix(int[], int[], T[][])</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Copy a submatrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#copySubMatrix(int, int, int, int, double[][])">copySubMatrix(int, int, int, int, double[][])</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Copy a submatrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#copySubMatrix(int[], int[], double[][])">copySubMatrix(int[], int[], double[][])</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Copy a submatrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/filter/KalmanFilter.html#correct(double[])">correct(double[])</a></span> - Method in class org.apache.commons.math3.filter.<a href="./org/apache/commons/math3/filter/KalmanFilter.html" title="class in org.apache.commons.math3.filter">KalmanFilter</a></dt>
<dd>
<div class="block">Correct the current state estimate with an actual measurement.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/filter/KalmanFilter.html#correct(org.apache.commons.math3.linear.RealVector)">correct(RealVector)</a></span> - Method in class org.apache.commons.math3.filter.<a href="./org/apache/commons/math3/filter/KalmanFilter.html" title="class in org.apache.commons.math3.filter">KalmanFilter</a></dt>
<dd>
<div class="block">Correct the current state estimate with an actual measurement.</div>
</dd>
<dt><a href="./org/apache/commons/math3/random/CorrelatedRandomVectorGenerator.html" title="class in org.apache.commons.math3.random"><span class="strong">CorrelatedRandomVectorGenerator</span></a> - Class in <a href="./org/apache/commons/math3/random/package-summary.html">org.apache.commons.math3.random</a></dt>
<dd>
<div class="block">A <a href="./org/apache/commons/math3/random/RandomVectorGenerator.html" title="interface in org.apache.commons.math3.random"><code>RandomVectorGenerator</code></a> that generates vectors with with
 correlated components.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/CorrelatedRandomVectorGenerator.html#CorrelatedRandomVectorGenerator(double[], org.apache.commons.math3.linear.RealMatrix, double, org.apache.commons.math3.random.NormalizedRandomGenerator)">CorrelatedRandomVectorGenerator(double[], RealMatrix, double, NormalizedRandomGenerator)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/CorrelatedRandomVectorGenerator.html" title="class in org.apache.commons.math3.random">CorrelatedRandomVectorGenerator</a></dt>
<dd>
<div class="block">Builds a correlated random vector generator from its mean
 vector and covariance matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/CorrelatedRandomVectorGenerator.html#CorrelatedRandomVectorGenerator(org.apache.commons.math3.linear.RealMatrix, double, org.apache.commons.math3.random.NormalizedRandomGenerator)">CorrelatedRandomVectorGenerator(RealMatrix, double, NormalizedRandomGenerator)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/CorrelatedRandomVectorGenerator.html" title="class in org.apache.commons.math3.random">CorrelatedRandomVectorGenerator</a></dt>
<dd>
<div class="block">Builds a null mean random correlated vector generator from its
 covariance matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/KendallsCorrelation.html#correlation(double[], double[])">correlation(double[], double[])</a></span> - Method in class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/KendallsCorrelation.html" title="class in org.apache.commons.math3.stat.correlation">KendallsCorrelation</a></dt>
<dd>
<div class="block">Computes the Kendall's Tau rank correlation coefficient between the two arrays.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/PearsonsCorrelation.html#correlation(double[], double[])">correlation(double[], double[])</a></span> - Method in class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/PearsonsCorrelation.html" title="class in org.apache.commons.math3.stat.correlation">PearsonsCorrelation</a></dt>
<dd>
<div class="block">Computes the Pearson's product-moment correlation coefficient between two arrays.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/SpearmansCorrelation.html#correlation(double[], double[])">correlation(double[], double[])</a></span> - Method in class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/SpearmansCorrelation.html" title="class in org.apache.commons.math3.stat.correlation">SpearmansCorrelation</a></dt>
<dd>
<div class="block">Computes the Spearman's rank correlation coefficient between the two arrays.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#cos()">cos()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Cosine operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#cos(double[], int, double[], int)">cos(double[], int, double[], int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Compute cosine of a derivative structure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#cos()">cos()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Cosine operation.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Cos.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Cos</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Cosine function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Cos.html#Cos()">Cos()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Cos.html" title="class in org.apache.commons.math3.analysis.function">Cos</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#cos()">cos()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Compute the
 <a href="http://mathworld.wolfram.com/Cosine.html" TARGET="_top">
 cosine</a>
 of this complex number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#cos()">cos()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Cosine operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpMath.html#cos(org.apache.commons.math3.dfp.Dfp)">cos(Dfp)</a></span> - Static method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpMath.html" title="class in org.apache.commons.math3.dfp">DfpMath</a></dt>
<dd>
<div class="block">computes the cosine of the argument.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#cos()">cos()</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Cosine operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#cos()">cos()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Cosine operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#cos(double)">cos(double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Cosine function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#cosh()">cosh()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Hyperbolic cosine operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#cosh(double[], int, double[], int)">cosh(double[], int, double[], int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Compute hyperbolic cosine of a derivative structure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#cosh()">cosh()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Hyperbolic cosine operation.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Cosh.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Cosh</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Hyperbolic cosine function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Cosh.html#Cosh()">Cosh()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Cosh.html" title="class in org.apache.commons.math3.analysis.function">Cosh</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#cosh()">cosh()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Compute the
 <a href="http://mathworld.wolfram.com/HyperbolicCosine.html" TARGET="_top">
 hyperbolic cosine</a> of this complex number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#cosh()">cosh()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Hyperbolic cosine operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#cosh()">cosh()</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Hyperbolic cosine operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#cosh()">cosh()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Hyperbolic cosine operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#cosh(double)">cosh(double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Compute the hyperbolic cosine of a number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#cosine(org.apache.commons.math3.linear.RealVector)">cosine(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Computes the cosine of the angle between this vector and the
 argument.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpMath.html#cosInternal(org.apache.commons.math3.dfp.Dfp[])">cosInternal(Dfp[])</a></span> - Static method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpMath.html" title="class in org.apache.commons.math3.dfp">DfpMath</a></dt>
<dd>
<div class="block">Computes cos(a)  Used when 0 < a < pi/4.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#cost">cost</a></span> - Variable in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1. Field to become "private" in 4.0.
 Please use <a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#setCost(double)"><code>AbstractLeastSquaresOptimizer.setCost(double)</code></a>.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresFactory.html#countEvaluations(org.apache.commons.math3.fitting.leastsquares.LeastSquaresProblem, org.apache.commons.math3.util.Incrementor)">countEvaluations(LeastSquaresProblem, Incrementor)</a></span> - Static method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresFactory.html" title="class in org.apache.commons.math3.fitting.leastsquares">LeastSquaresFactory</a></dt>
<dd>
<div class="block">Count the evaluations of a particular problem.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/correlation/Covariance.html" title="class in org.apache.commons.math3.stat.correlation"><span class="strong">Covariance</span></a> - Class in <a href="./org/apache/commons/math3/stat/correlation/package-summary.html">org.apache.commons.math3.stat.correlation</a></dt>
<dd>
<div class="block">Computes covariances for pairs of arrays or columns of a matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/Covariance.html#Covariance()">Covariance()</a></span> - Constructor for class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/Covariance.html" title="class in org.apache.commons.math3.stat.correlation">Covariance</a></dt>
<dd>
<div class="block">Create a Covariance with no data</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/Covariance.html#Covariance(double[][], boolean)">Covariance(double[][], boolean)</a></span> - Constructor for class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/Covariance.html" title="class in org.apache.commons.math3.stat.correlation">Covariance</a></dt>
<dd>
<div class="block">Create a Covariance matrix from a rectangular array
 whose columns represent covariates.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/Covariance.html#Covariance(double[][])">Covariance(double[][])</a></span> - Constructor for class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/Covariance.html" title="class in org.apache.commons.math3.stat.correlation">Covariance</a></dt>
<dd>
<div class="block">Create a Covariance matrix from a rectangular array
 whose columns represent covariates.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/Covariance.html#Covariance(org.apache.commons.math3.linear.RealMatrix, boolean)">Covariance(RealMatrix, boolean)</a></span> - Constructor for class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/Covariance.html" title="class in org.apache.commons.math3.stat.correlation">Covariance</a></dt>
<dd>
<div class="block">Create a covariance matrix from a matrix whose columns
 represent covariates.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/Covariance.html#Covariance(org.apache.commons.math3.linear.RealMatrix)">Covariance(RealMatrix)</a></span> - Constructor for class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/Covariance.html" title="class in org.apache.commons.math3.stat.correlation">Covariance</a></dt>
<dd>
<div class="block">Create a covariance matrix from a matrix whose columns
 represent covariates.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/Covariance.html#covariance(double[], double[], boolean)">covariance(double[], double[], boolean)</a></span> - Method in class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/Covariance.html" title="class in org.apache.commons.math3.stat.correlation">Covariance</a></dt>
<dd>
<div class="block">Computes the covariance between the two arrays.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/Covariance.html#covariance(double[], double[])">covariance(double[], double[])</a></span> - Method in class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/Covariance.html" title="class in org.apache.commons.math3.stat.correlation">Covariance</a></dt>
<dd>
<div class="block">Computes the covariance between the two arrays, using the bias-corrected
 formula.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/PearsonsCorrelation.html#covarianceToCorrelation(org.apache.commons.math3.linear.RealMatrix)">covarianceToCorrelation(RealMatrix)</a></span> - Method in class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/PearsonsCorrelation.html" title="class in org.apache.commons.math3.stat.correlation">PearsonsCorrelation</a></dt>
<dd>
<div class="block">Derives a correlation matrix from a covariance matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/GaussianCurveFitter.html#create()">create()</a></span> - Static method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/GaussianCurveFitter.html" title="class in org.apache.commons.math3.fitting">GaussianCurveFitter</a></dt>
<dd>
<div class="block">Creates a default curve fitter.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/HarmonicCurveFitter.html#create()">create()</a></span> - Static method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/HarmonicCurveFitter.html" title="class in org.apache.commons.math3.fitting">HarmonicCurveFitter</a></dt>
<dd>
<div class="block">Creates a default curve fitter.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresFactory.html#create(org.apache.commons.math3.fitting.leastsquares.MultivariateJacobianFunction, org.apache.commons.math3.linear.RealVector, org.apache.commons.math3.linear.RealVector, org.apache.commons.math3.optim.ConvergenceChecker, int, int)">create(MultivariateJacobianFunction, RealVector, RealVector, ConvergenceChecker&lt;LeastSquaresProblem.Evaluation&gt;, int, int)</a></span> - Static method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresFactory.html" title="class in org.apache.commons.math3.fitting.leastsquares">LeastSquaresFactory</a></dt>
<dd>
<div class="block">Create a <a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.html" title="interface in org.apache.commons.math3.fitting.leastsquares"><code>LeastSquaresProblem</code></a>
 from the given elements.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresFactory.html#create(org.apache.commons.math3.fitting.leastsquares.MultivariateJacobianFunction, org.apache.commons.math3.linear.RealVector, org.apache.commons.math3.linear.RealVector, org.apache.commons.math3.linear.RealMatrix, org.apache.commons.math3.optim.ConvergenceChecker, int, int)">create(MultivariateJacobianFunction, RealVector, RealVector, RealMatrix, ConvergenceChecker&lt;LeastSquaresProblem.Evaluation&gt;, int, int)</a></span> - Static method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresFactory.html" title="class in org.apache.commons.math3.fitting.leastsquares">LeastSquaresFactory</a></dt>
<dd>
<div class="block">Create a <a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.html" title="interface in org.apache.commons.math3.fitting.leastsquares"><code>LeastSquaresProblem</code></a>
 from the given elements.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresFactory.html#create(org.apache.commons.math3.analysis.MultivariateVectorFunction, org.apache.commons.math3.analysis.MultivariateMatrixFunction, double[], double[], org.apache.commons.math3.linear.RealMatrix, org.apache.commons.math3.optim.ConvergenceChecker, int, int)">create(MultivariateVectorFunction, MultivariateMatrixFunction, double[], double[], RealMatrix, ConvergenceChecker&lt;LeastSquaresProblem.Evaluation&gt;, int, int)</a></span> - Static method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresFactory.html" title="class in org.apache.commons.math3.fitting.leastsquares">LeastSquaresFactory</a></dt>
<dd>
<div class="block">Create a <a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.html" title="interface in org.apache.commons.math3.fitting.leastsquares"><code>LeastSquaresProblem</code></a>
 from the given elements.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/PolynomialCurveFitter.html#create(int)">create(int)</a></span> - Static method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/PolynomialCurveFitter.html" title="class in org.apache.commons.math3.fitting">PolynomialCurveFitter</a></dt>
<dd>
<div class="block">Creates a default curve fitter.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/JacobiPreconditioner.html#create(org.apache.commons.math3.linear.RealLinearOperator)">create(RealLinearOperator)</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/JacobiPreconditioner.html" title="class in org.apache.commons.math3.linear">JacobiPreconditioner</a></dt>
<dd>
<div class="block">Creates a new instance of this class.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Pair.html#create(K, V)">create(K, V)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Pair.html" title="class in org.apache.commons.math3.util">Pair</a></dt>
<dd>
<div class="block">Convenience factory method that calls the
 <a href="./org/apache/commons/math3/util/Pair.html#Pair(K, V)"><code>constructor</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomAdaptor.html#createAdaptor(org.apache.commons.math3.random.RandomGenerator)">createAdaptor(RandomGenerator)</a></span> - Static method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomAdaptor.html" title="class in org.apache.commons.math3.random">RandomAdaptor</a></dt>
<dd>
<div class="block">Factory method to create a <code>Random</code> using the supplied
 <code>RandomGenerator</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#createBlocksLayout(org.apache.commons.math3.Field, int, int)">createBlocksLayout(Field&lt;T&gt;, int, int)</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Create a data array in blocks layout.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#createBlocksLayout(int, int)">createBlocksLayout(int, int)</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Create a data array in blocks layout.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialsUtils.html#createChebyshevPolynomial(int)">createChebyshevPolynomial(int)</a></span> - Static method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialsUtils.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialsUtils</a></dt>
<dd>
<div class="block">Create a Chebyshev polynomial of the first kind.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#createColumnFieldMatrix(T[])">createColumnFieldMatrix(T[])</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Creates a column <a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear"><code>FieldMatrix</code></a> using the data from the input
 array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#createColumnRealMatrix(double[])">createColumnRealMatrix(double[])</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Creates a column <a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear"><code>RealMatrix</code></a> using the data from the input
 array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#createComplex(double, double)">createComplex(double, double)</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Create a complex number given the real and imaginary parts.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/TransformUtils.html#createComplexArray(double[][])">createComplexArray(double[][])</a></span> - Static method in class org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/TransformUtils.html" title="class in org.apache.commons.math3.transform">TransformUtils</a></dt>
<dd>
<div class="block">Builds a new array of <a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex"><code>Complex</code></a> from the specified two dimensional
 array of real and imaginary parts.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#createConstant(double)">createConstant(double)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Create a constant compatible with instance order and number of parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#createConstant(double)">createConstant(double)</a></span> - Static method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Factory method creating a constant.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html#createContributingStatistics()">createContributingStatistics()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">AggregateSummaryStatistics</a></dt>
<dd>
<div class="block">Creates and returns a <code>SummaryStatistics</code> whose data will be
 aggregated with those of this <code>AggregateSummaryStatistics</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#createFieldDiagonalMatrix(T[])">createFieldDiagonalMatrix(T[])</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Returns a diagonal matrix with specified elements.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#createFieldIdentityMatrix(org.apache.commons.math3.Field, int)">createFieldIdentityMatrix(Field&lt;T&gt;, int)</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Returns <code>dimension x dimension</code> identity matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#createFieldMatrix(org.apache.commons.math3.Field, int, int)">createFieldMatrix(Field&lt;T&gt;, int, int)</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Returns a <a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear"><code>FieldMatrix</code></a> with specified dimensions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#createFieldMatrix(T[][])">createFieldMatrix(T[][])</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Returns a <a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear"><code>FieldMatrix</code></a> whose entries are the the values in the
 the input array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#createFieldVector(T[])">createFieldVector(T[])</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Creates a <a href="./org/apache/commons/math3/linear/FieldVector.html" title="interface in org.apache.commons.math3.linear"><code>FieldVector</code></a> using the data from the input array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialsUtils.html#createHermitePolynomial(int)">createHermitePolynomial(int)</a></span> - Static method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialsUtils.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialsUtils</a></dt>
<dd>
<div class="block">Create a Hermite polynomial.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/interval/AgrestiCoullInterval.html#createInterval(int, int, double)">createInterval(int, int, double)</a></span> - Method in class org.apache.commons.math3.stat.interval.<a href="./org/apache/commons/math3/stat/interval/AgrestiCoullInterval.html" title="class in org.apache.commons.math3.stat.interval">AgrestiCoullInterval</a></dt>
<dd>
<div class="block">Create a confidence interval for the true probability of success
 of an unknown binomial distribution with the given observed number
 of trials, successes and confidence level.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/interval/BinomialConfidenceInterval.html#createInterval(int, int, double)">createInterval(int, int, double)</a></span> - Method in interface org.apache.commons.math3.stat.interval.<a href="./org/apache/commons/math3/stat/interval/BinomialConfidenceInterval.html" title="interface in org.apache.commons.math3.stat.interval">BinomialConfidenceInterval</a></dt>
<dd>
<div class="block">Create a confidence interval for the true probability of success
 of an unknown binomial distribution with the given observed number
 of trials, successes and confidence level.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/interval/ClopperPearsonInterval.html#createInterval(int, int, double)">createInterval(int, int, double)</a></span> - Method in class org.apache.commons.math3.stat.interval.<a href="./org/apache/commons/math3/stat/interval/ClopperPearsonInterval.html" title="class in org.apache.commons.math3.stat.interval">ClopperPearsonInterval</a></dt>
<dd>
<div class="block">Create a confidence interval for the true probability of success
 of an unknown binomial distribution with the given observed number
 of trials, successes and confidence level.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/interval/NormalApproximationInterval.html#createInterval(int, int, double)">createInterval(int, int, double)</a></span> - Method in class org.apache.commons.math3.stat.interval.<a href="./org/apache/commons/math3/stat/interval/NormalApproximationInterval.html" title="class in org.apache.commons.math3.stat.interval">NormalApproximationInterval</a></dt>
<dd>
<div class="block">Create a confidence interval for the true probability of success
 of an unknown binomial distribution with the given observed number
 of trials, successes and confidence level.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/interval/WilsonScoreInterval.html#createInterval(int, int, double)">createInterval(int, int, double)</a></span> - Method in class org.apache.commons.math3.stat.interval.<a href="./org/apache/commons/math3/stat/interval/WilsonScoreInterval.html" title="class in org.apache.commons.math3.stat.interval">WilsonScoreInterval</a></dt>
<dd>
<div class="block">Create a confidence interval for the true probability of success
 of an unknown binomial distribution with the given observed number
 of trials, successes and confidence level.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialsUtils.html#createJacobiPolynomial(int, int, int)">createJacobiPolynomial(int, int, int)</a></span> - Static method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialsUtils.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialsUtils</a></dt>
<dd>
<div class="block">Create a Jacobi polynomial.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialsUtils.html#createLaguerrePolynomial(int)">createLaguerrePolynomial(int)</a></span> - Static method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialsUtils.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialsUtils</a></dt>
<dd>
<div class="block">Create a Laguerre polynomial.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialsUtils.html#createLegendrePolynomial(int)">createLegendrePolynomial(int)</a></span> - Static method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialsUtils.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialsUtils</a></dt>
<dd>
<div class="block">Create a Legendre polynomial.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#createMatrix(int, int)">createMatrix(int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Create a new FieldMatrix<T> of the same type as the instance with
 the supplied row and column dimensions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#createMatrix(int, int)">createMatrix(int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Create a new RealMatrix of the same type as the instance with the
 supplied
 row and column dimensions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html#createMatrix(int, int)">createMatrix(int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowFieldMatrix</a></dt>
<dd>
<div class="block">Create a new FieldMatrix<T> of the same type as the instance with
 the supplied row and column dimensions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html#createMatrix(int, int)">createMatrix(int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowRealMatrix</a></dt>
<dd>
<div class="block">Create a new RealMatrix of the same type as the instance with the
 supplied
 row and column dimensions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#createMatrix(int, int)">createMatrix(int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Create a new FieldMatrix<T> of the same type as the instance with
 the supplied row and column dimensions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#createMatrix(int, int)">createMatrix(int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Create a new RealMatrix of the same type as the instance with the
 supplied
 row and column dimensions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DiagonalMatrix.html#createMatrix(int, int)">createMatrix(int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DiagonalMatrix.html" title="class in org.apache.commons.math3.linear">DiagonalMatrix</a></dt>
<dd>
<div class="block">Create a new RealMatrix of the same type as the instance with the
 supplied
 row and column dimensions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#createMatrix(int, int)">createMatrix(int, int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Create a new FieldMatrix<T> of the same type as the instance with
 the supplied row and column dimensions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealMatrix.html#createMatrix(int, int)">createMatrix(int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealMatrix.html" title="class in org.apache.commons.math3.linear">OpenMapRealMatrix</a></dt>
<dd>
<div class="block">Create a new RealMatrix of the same type as the instance with the
 supplied
 row and column dimensions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#createMatrix(int, int)">createMatrix(int, int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Create a new RealMatrix of the same type as the instance with the
 supplied
 row and column dimensions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldMatrix.html#createMatrix(int, int)">createMatrix(int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldMatrix.html" title="class in org.apache.commons.math3.linear">SparseFieldMatrix</a></dt>
<dd>
<div class="block">Create a new FieldMatrix<T> of the same type as the instance with
 the supplied row and column dimensions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/Network.html#createNeuron(double[])">createNeuron(double[])</a></span> - Method in class org.apache.commons.math3.ml.neuralnet.<a href="./org/apache/commons/math3/ml/neuralnet/Network.html" title="class in org.apache.commons.math3.ml.neuralnet">Network</a></dt>
<dd>
<div class="block">Creates a neuron and assigns it a unique identifier.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomGeneratorFactory.html#createRandomGenerator(java.util.Random)">createRandomGenerator(Random)</a></span> - Static method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomGeneratorFactory.html" title="class in org.apache.commons.math3.random">RandomGeneratorFactory</a></dt>
<dd>
<div class="block">Creates a <a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random"><code>RandomDataGenerator</code></a> instance that wraps a
 <a href="http://docs.oracle.com/javase/6/docs/api/java/util/Random.html?is-external=true" title="class or interface in java.util"><code>Random</code></a> instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#createRealDiagonalMatrix(double[])">createRealDiagonalMatrix(double[])</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Returns a diagonal matrix with specified elements.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#createRealIdentityMatrix(int)">createRealIdentityMatrix(int)</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Returns <code>dimension x dimension</code> identity matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/TransformUtils.html#createRealImaginaryArray(org.apache.commons.math3.complex.Complex[])">createRealImaginaryArray(Complex[])</a></span> - Static method in class org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/TransformUtils.html" title="class in org.apache.commons.math3.transform">TransformUtils</a></dt>
<dd>
<div class="block">Builds a new two dimensional array of <code>double</code> filled with the real
 and imaginary parts of the specified <a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex"><code>Complex</code></a> numbers.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#createRealMatrix(int, int)">createRealMatrix(int, int)</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Returns a <a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear"><code>RealMatrix</code></a> with specified dimensions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#createRealMatrix(double[][])">createRealMatrix(double[][])</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Returns a <a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear"><code>RealMatrix</code></a> whose entries are the the values in the
 the input array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#createRealVector(double[])">createRealVector(double[])</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Creates a <a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear"><code>RealVector</code></a> using the data from the input array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/hull/ConvexHull2D.html#createRegion()">createRegion()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.hull.<a href="./org/apache/commons/math3/geometry/euclidean/twod/hull/ConvexHull2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod.hull">ConvexHull2D</a></dt>
<dd>
<div class="block">Returns a new region that is enclosed by the convex hull.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/hull/ConvexHull.html#createRegion()">createRegion()</a></span> - Method in interface org.apache.commons.math3.geometry.hull.<a href="./org/apache/commons/math3/geometry/hull/ConvexHull.html" title="interface in org.apache.commons.math3.geometry.hull">ConvexHull</a></dt>
<dd>
<div class="block">Returns a new region that is enclosed by the convex hull.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#createRowFieldMatrix(T[])">createRowFieldMatrix(T[])</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Create a row <a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear"><code>FieldMatrix</code></a> using the data from the input
 array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#createRowRealMatrix(double[])">createRowRealMatrix(double[])</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Create a row <a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear"><code>RealMatrix</code></a> using the data from the input
 array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#createVariable(int, double)">createVariable(int, double)</a></span> - Static method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Factory method creating an independent variable.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/CrossoverPolicy.html#crossover(org.apache.commons.math3.genetics.Chromosome, org.apache.commons.math3.genetics.Chromosome)">crossover(Chromosome, Chromosome)</a></span> - Method in interface org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/CrossoverPolicy.html" title="interface in org.apache.commons.math3.genetics">CrossoverPolicy</a></dt>
<dd>
<div class="block">Perform a crossover operation on the given chromosomes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/CycleCrossover.html#crossover(org.apache.commons.math3.genetics.Chromosome, org.apache.commons.math3.genetics.Chromosome)">crossover(Chromosome, Chromosome)</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/CycleCrossover.html" title="class in org.apache.commons.math3.genetics">CycleCrossover</a></dt>
<dd>
<div class="block">Perform a crossover operation on the given chromosomes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/NPointCrossover.html#crossover(org.apache.commons.math3.genetics.Chromosome, org.apache.commons.math3.genetics.Chromosome)">crossover(Chromosome, Chromosome)</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/NPointCrossover.html" title="class in org.apache.commons.math3.genetics">NPointCrossover</a></dt>
<dd>
<div class="block">Performs a N-point crossover.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/OnePointCrossover.html#crossover(org.apache.commons.math3.genetics.Chromosome, org.apache.commons.math3.genetics.Chromosome)">crossover(Chromosome, Chromosome)</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/OnePointCrossover.html" title="class in org.apache.commons.math3.genetics">OnePointCrossover</a></dt>
<dd>
<div class="block">Performs one point crossover.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/OrderedCrossover.html#crossover(org.apache.commons.math3.genetics.Chromosome, org.apache.commons.math3.genetics.Chromosome)">crossover(Chromosome, Chromosome)</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/OrderedCrossover.html" title="class in org.apache.commons.math3.genetics">OrderedCrossover</a></dt>
<dd>
<div class="block">Perform a crossover operation on the given chromosomes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/UniformCrossover.html#crossover(org.apache.commons.math3.genetics.Chromosome, org.apache.commons.math3.genetics.Chromosome)">crossover(Chromosome, Chromosome)</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/UniformCrossover.html" title="class in org.apache.commons.math3.genetics">UniformCrossover</a></dt>
<dd>
<div class="block">Perform a crossover operation on the given chromosomes.</div>
</dd>
<dt><a href="./org/apache/commons/math3/genetics/CrossoverPolicy.html" title="interface in org.apache.commons.math3.genetics"><span class="strong">CrossoverPolicy</span></a> - Interface in <a href="./org/apache/commons/math3/genetics/package-summary.html">org.apache.commons.math3.genetics</a></dt>
<dd>
<div class="block">Policy used to create a pair of new chromosomes by performing a crossover
 operation on a source pair of chromosomes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#crossProduct(org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">crossProduct(FieldVector3D&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Compute the cross-product of the instance with another vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#crossProduct(org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">crossProduct(Vector3D)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Compute the cross-product of the instance with another vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#crossProduct(org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">crossProduct(FieldVector3D&lt;T&gt;, FieldVector3D&lt;T&gt;)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Compute the cross-product of two vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#crossProduct(org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">crossProduct(FieldVector3D&lt;T&gt;, Vector3D)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Compute the cross-product of two vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#crossProduct(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">crossProduct(Vector3D, FieldVector3D&lt;T&gt;)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Compute the cross-product of two vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#crossProduct(org.apache.commons.math3.geometry.Vector)">crossProduct(Vector&lt;Euclidean3D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Compute the cross-product of the instance with another vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#crossProduct(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">crossProduct(Vector3D, Vector3D)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Compute the cross-product of two vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#crossProduct(org.apache.commons.math3.geometry.euclidean.twod.Vector2D, org.apache.commons.math3.geometry.euclidean.twod.Vector2D)">crossProduct(Vector2D, Vector2D)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Compute the cross-product of the instance and the given points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/AbstractIntegerDistribution.html#cumulativeProbability(int, int)">cumulativeProbability(int, int)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/AbstractIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractIntegerDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(x0 &lt; X &lt;= x1)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/AbstractRealDistribution.html#cumulativeProbability(double, double)">cumulativeProbability(double, double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/AbstractRealDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractRealDistribution</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0). Please use
 <a href="./org/apache/commons/math3/distribution/AbstractRealDistribution.html#probability(double, double)"><code>AbstractRealDistribution.probability(double,double)</code></a> instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/BetaDistribution.html#cumulativeProbability(double)">cumulativeProbability(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/BetaDistribution.html" title="class in org.apache.commons.math3.distribution">BetaDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X &lt;= x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/BinomialDistribution.html#cumulativeProbability(int)">cumulativeProbability(int)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/BinomialDistribution.html" title="class in org.apache.commons.math3.distribution">BinomialDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X &lt;= x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/CauchyDistribution.html#cumulativeProbability(double)">cumulativeProbability(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/CauchyDistribution.html" title="class in org.apache.commons.math3.distribution">CauchyDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X &lt;= x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html#cumulativeProbability(double)">cumulativeProbability(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html" title="class in org.apache.commons.math3.distribution">ChiSquaredDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X &lt;= x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html#cumulativeProbability(int)">cumulativeProbability(int)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedIntegerDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X &lt;= x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/EnumeratedRealDistribution.html#cumulativeProbability(double)">cumulativeProbability(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/EnumeratedRealDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedRealDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X &lt;= x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html#cumulativeProbability(double)">cumulativeProbability(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html" title="class in org.apache.commons.math3.distribution">ExponentialDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X &lt;= x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/FDistribution.html#cumulativeProbability(double)">cumulativeProbability(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/FDistribution.html" title="class in org.apache.commons.math3.distribution">FDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X &lt;= x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/GammaDistribution.html#cumulativeProbability(double)">cumulativeProbability(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/GammaDistribution.html" title="class in org.apache.commons.math3.distribution">GammaDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X &lt;= x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/GeometricDistribution.html#cumulativeProbability(int)">cumulativeProbability(int)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/GeometricDistribution.html" title="class in org.apache.commons.math3.distribution">GeometricDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X &lt;= x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/HypergeometricDistribution.html#cumulativeProbability(int)">cumulativeProbability(int)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/HypergeometricDistribution.html" title="class in org.apache.commons.math3.distribution">HypergeometricDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X &lt;= x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/IntegerDistribution.html#cumulativeProbability(int)">cumulativeProbability(int)</a></span> - Method in interface org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/IntegerDistribution.html" title="interface in org.apache.commons.math3.distribution">IntegerDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X &lt;= x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/IntegerDistribution.html#cumulativeProbability(int, int)">cumulativeProbability(int, int)</a></span> - Method in interface org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/IntegerDistribution.html" title="interface in org.apache.commons.math3.distribution">IntegerDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(x0 &lt; X &lt;= x1)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LevyDistribution.html#cumulativeProbability(double)">cumulativeProbability(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LevyDistribution.html" title="class in org.apache.commons.math3.distribution">LevyDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X &lt;= x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html#cumulativeProbability(double)">cumulativeProbability(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html" title="class in org.apache.commons.math3.distribution">LogNormalDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X &lt;= x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html#cumulativeProbability(double, double)">cumulativeProbability(double, double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html" title="class in org.apache.commons.math3.distribution">LogNormalDistribution</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>See <a href="./org/apache/commons/math3/distribution/RealDistribution.html#cumulativeProbability(double, double)"><code>RealDistribution.cumulativeProbability(double,double)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/NormalDistribution.html#cumulativeProbability(double)">cumulativeProbability(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/NormalDistribution.html" title="class in org.apache.commons.math3.distribution">NormalDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X &lt;= x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/NormalDistribution.html#cumulativeProbability(double, double)">cumulativeProbability(double, double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/NormalDistribution.html" title="class in org.apache.commons.math3.distribution">NormalDistribution</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>See <a href="./org/apache/commons/math3/distribution/RealDistribution.html#cumulativeProbability(double, double)"><code>RealDistribution.cumulativeProbability(double,double)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ParetoDistribution.html#cumulativeProbability(double)">cumulativeProbability(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ParetoDistribution.html" title="class in org.apache.commons.math3.distribution">ParetoDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X &lt;= x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ParetoDistribution.html#cumulativeProbability(double, double)">cumulativeProbability(double, double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ParetoDistribution.html" title="class in org.apache.commons.math3.distribution">ParetoDistribution</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>See <a href="./org/apache/commons/math3/distribution/RealDistribution.html#cumulativeProbability(double, double)"><code>RealDistribution.cumulativeProbability(double,double)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/PascalDistribution.html#cumulativeProbability(int)">cumulativeProbability(int)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/PascalDistribution.html" title="class in org.apache.commons.math3.distribution">PascalDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X &lt;= x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/PoissonDistribution.html#cumulativeProbability(int)">cumulativeProbability(int)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/PoissonDistribution.html" title="class in org.apache.commons.math3.distribution">PoissonDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X &lt;= x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/RealDistribution.html#cumulativeProbability(double)">cumulativeProbability(double)</a></span> - Method in interface org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/RealDistribution.html" title="interface in org.apache.commons.math3.distribution">RealDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X &lt;= x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/RealDistribution.html#cumulativeProbability(double, double)">cumulativeProbability(double, double)</a></span> - Method in interface org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/RealDistribution.html" title="interface in org.apache.commons.math3.distribution">RealDistribution</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1. In 4.0, this method will be renamed
 <code>probability(double x0, double x1)</code>.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/TDistribution.html#cumulativeProbability(double)">cumulativeProbability(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/TDistribution.html" title="class in org.apache.commons.math3.distribution">TDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X &lt;= x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/TriangularDistribution.html#cumulativeProbability(double)">cumulativeProbability(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/TriangularDistribution.html" title="class in org.apache.commons.math3.distribution">TriangularDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X &lt;= x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/UniformIntegerDistribution.html#cumulativeProbability(int)">cumulativeProbability(int)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/UniformIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">UniformIntegerDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X &lt;= x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html#cumulativeProbability(double)">cumulativeProbability(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html" title="class in org.apache.commons.math3.distribution">UniformRealDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X &lt;= x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/WeibullDistribution.html#cumulativeProbability(double)">cumulativeProbability(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/WeibullDistribution.html" title="class in org.apache.commons.math3.distribution">WeibullDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X &lt;= x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ZipfDistribution.html#cumulativeProbability(int)">cumulativeProbability(int)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ZipfDistribution.html" title="class in org.apache.commons.math3.distribution">ZipfDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X &lt;= x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#cumulativeProbability(double)">cumulativeProbability(double)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random">EmpiricalDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X &lt;= x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#currentState">currentState</a></span> - Variable in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">current state</div>
</dd>
<dt><a href="./org/apache/commons/math3/fitting/CurveFitter.html" title="class in org.apache.commons.math3.fitting"><span class="strong">CurveFitter</span></a>&lt;<a href="./org/apache/commons/math3/fitting/CurveFitter.html" title="type parameter in CurveFitter">T</a> extends <a href="./org/apache/commons/math3/analysis/ParametricUnivariateFunction.html" title="interface in org.apache.commons.math3.analysis">ParametricUnivariateFunction</a>&gt; - Class in <a href="./org/apache/commons/math3/fitting/package-summary.html">org.apache.commons.math3.fitting</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.3. Please use <a href="./org/apache/commons/math3/fitting/AbstractCurveFitter.html" title="class in org.apache.commons.math3.fitting"><code>AbstractCurveFitter</code></a> and
 <a href="./org/apache/commons/math3/fitting/WeightedObservedPoints.html" title="class in org.apache.commons.math3.fitting"><code>WeightedObservedPoints</code></a> instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/CurveFitter.html#CurveFitter(org.apache.commons.math3.optim.nonlinear.vector.MultivariateVectorOptimizer)">CurveFitter(MultivariateVectorOptimizer)</a></span> - Constructor for class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/CurveFitter.html" title="class in org.apache.commons.math3.fitting">CurveFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/fitting/CurveFitter.html" title="class in org.apache.commons.math3.optimization.fitting"><span class="strong">CurveFitter</span></a>&lt;<a href="./org/apache/commons/math3/optimization/fitting/CurveFitter.html" title="type parameter in CurveFitter">T</a> extends <a href="./org/apache/commons/math3/analysis/ParametricUnivariateFunction.html" title="interface in org.apache.commons.math3.analysis">ParametricUnivariateFunction</a>&gt; - Class in <a href="./org/apache/commons/math3/optimization/fitting/package-summary.html">org.apache.commons.math3.optimization.fitting</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/fitting/CurveFitter.html#CurveFitter(org.apache.commons.math3.optimization.DifferentiableMultivariateVectorOptimizer)">CurveFitter(DifferentiableMultivariateVectorOptimizer)</a></span> - Constructor for class org.apache.commons.math3.optimization.fitting.<a href="./org/apache/commons/math3/optimization/fitting/CurveFitter.html" title="class in org.apache.commons.math3.optimization.fitting">CurveFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1 replaced by <a href="./org/apache/commons/math3/optimization/fitting/CurveFitter.html#CurveFitter(org.apache.commons.math3.optimization.MultivariateDifferentiableVectorOptimizer)"><code>CurveFitter.CurveFitter(MultivariateDifferentiableVectorOptimizer)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/fitting/CurveFitter.html#CurveFitter(org.apache.commons.math3.optimization.MultivariateDifferentiableVectorOptimizer)">CurveFitter(MultivariateDifferentiableVectorOptimizer)</a></span> - Constructor for class org.apache.commons.math3.optimization.fitting.<a href="./org/apache/commons/math3/optimization/fitting/CurveFitter.html" title="class in org.apache.commons.math3.optimization.fitting">CurveFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/genetics/CycleCrossover.html" title="class in org.apache.commons.math3.genetics"><span class="strong">CycleCrossover</span></a>&lt;<a href="./org/apache/commons/math3/genetics/CycleCrossover.html" title="type parameter in CycleCrossover">T</a>&gt; - Class in <a href="./org/apache/commons/math3/genetics/package-summary.html">org.apache.commons.math3.genetics</a></dt>
<dd>
<div class="block">Cycle Crossover [CX] builds offspring from <b>ordered</b> chromosomes by identifying cycles
 between two parent chromosomes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/CycleCrossover.html#CycleCrossover()">CycleCrossover()</a></span> - Constructor for class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/CycleCrossover.html" title="class in org.apache.commons.math3.genetics">CycleCrossover</a></dt>
<dd>
<div class="block">Creates a new <a href="./org/apache/commons/math3/genetics/CycleCrossover.html" title="class in org.apache.commons.math3.genetics"><code>CycleCrossover</code></a> policy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/CycleCrossover.html#CycleCrossover(boolean)">CycleCrossover(boolean)</a></span> - Constructor for class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/CycleCrossover.html" title="class in org.apache.commons.math3.genetics">CycleCrossover</a></dt>
<dd>
<div class="block">Creates a new <a href="./org/apache/commons/math3/genetics/CycleCrossover.html" title="class in org.apache.commons.math3.genetics"><code>CycleCrossover</code></a> policy using the given <code>randomStart</code> behavior.</div>
</dd>
</dl>
<a name="_D_">
<!--   -->
</a>
<h2 class="title">D</h2>
<dl>
<dt><a href="./org/apache/commons/math3/ml/clustering/DBSCANClusterer.html" title="class in org.apache.commons.math3.ml.clustering"><span class="strong">DBSCANClusterer</span></a>&lt;<a href="./org/apache/commons/math3/ml/clustering/DBSCANClusterer.html" title="type parameter in DBSCANClusterer">T</a> extends <a href="./org/apache/commons/math3/ml/clustering/Clusterable.html" title="interface in org.apache.commons.math3.ml.clustering">Clusterable</a>&gt; - Class in <a href="./org/apache/commons/math3/ml/clustering/package-summary.html">org.apache.commons.math3.ml.clustering</a></dt>
<dd>
<div class="block">DBSCAN (density-based spatial clustering of applications with noise) algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/DBSCANClusterer.html#DBSCANClusterer(double, int)">DBSCANClusterer(double, int)</a></span> - Constructor for class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/DBSCANClusterer.html" title="class in org.apache.commons.math3.ml.clustering">DBSCANClusterer</a></dt>
<dd>
<div class="block">Creates a new instance of a DBSCANClusterer.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/DBSCANClusterer.html#DBSCANClusterer(double, int, org.apache.commons.math3.ml.distance.DistanceMeasure)">DBSCANClusterer(double, int, DistanceMeasure)</a></span> - Constructor for class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/DBSCANClusterer.html" title="class in org.apache.commons.math3.ml.clustering">DBSCANClusterer</a></dt>
<dd>
<div class="block">Creates a new instance of a DBSCANClusterer.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/clustering/DBSCANClusterer.html" title="class in org.apache.commons.math3.stat.clustering"><span class="strong">DBSCANClusterer</span></a>&lt;<a href="./org/apache/commons/math3/stat/clustering/DBSCANClusterer.html" title="type parameter in DBSCANClusterer">T</a> extends <a href="./org/apache/commons/math3/stat/clustering/Clusterable.html" title="interface in org.apache.commons.math3.stat.clustering">Clusterable</a>&lt;<a href="./org/apache/commons/math3/stat/clustering/DBSCANClusterer.html" title="type parameter in DBSCANClusterer">T</a>&gt;&gt; - Class in <a href="./org/apache/commons/math3/stat/clustering/package-summary.html">org.apache.commons.math3.stat.clustering</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.2 (to be removed in 4.0),
 use <a href="./org/apache/commons/math3/ml/clustering/DBSCANClusterer.html" title="class in org.apache.commons.math3.ml.clustering"><code>DBSCANClusterer</code></a> instead</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/clustering/DBSCANClusterer.html#DBSCANClusterer(double, int)">DBSCANClusterer(double, int)</a></span> - Constructor for class org.apache.commons.math3.stat.clustering.<a href="./org/apache/commons/math3/stat/clustering/DBSCANClusterer.html" title="class in org.apache.commons.math3.stat.clustering">DBSCANClusterer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Creates a new instance of a DBSCANClusterer.</div>
</dd>
<dt><a href="./org/apache/commons/math3/transform/DctNormalization.html" title="enum in org.apache.commons.math3.transform"><span class="strong">DctNormalization</span></a> - Enum in <a href="./org/apache/commons/math3/transform/package-summary.html">org.apache.commons.math3.transform</a></dt>
<dd>
<div class="block">This enumeration defines the various types of normalizations that can be
 applied to discrete cosine transforms (DCT).</div>
</dd>
<dt><a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util"><span class="strong">Decimal64</span></a> - Class in <a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a></dt>
<dd>
<div class="block">This class wraps a <code>double</code> value in an object.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#Decimal64(double)">Decimal64(double)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Creates a new instance of this class.</div>
</dd>
<dt><a href="./org/apache/commons/math3/util/Decimal64Field.html" title="class in org.apache.commons.math3.util"><span class="strong">Decimal64Field</span></a> - Class in <a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a></dt>
<dd>
<div class="block">The field of double precision floating-point numbers.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/PermutationChromosome.html#decode(java.util.List)">decode(List&lt;T&gt;)</a></span> - Method in interface org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/PermutationChromosome.html" title="interface in org.apache.commons.math3.genetics">PermutationChromosome</a></dt>
<dd>
<div class="block">Permutes the <code>sequence</code> of objects of type T according to the
 permutation this chromosome represents.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/RandomKey.html#decode(java.util.List)">decode(List&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/RandomKey.html" title="class in org.apache.commons.math3.genetics">RandomKey</a></dt>
<dd>
<div class="block">Permutes the <code>sequence</code> of objects of type T according to the
 permutation this chromosome represents.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/QRDecomposition.html#decompose(double[][])">decompose(double[][])</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/QRDecomposition.html" title="class in org.apache.commons.math3.linear">QRDecomposition</a></dt>
<dd>
<div class="block">Decompose matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RRQRDecomposition.html#decompose(double[][])">decompose(double[][])</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RRQRDecomposition.html" title="class in org.apache.commons.math3.linear">RRQRDecomposition</a></dt>
<dd>
<div class="block">Decompose matrix.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/DecompositionSolver.html" title="interface in org.apache.commons.math3.linear"><span class="strong">DecompositionSolver</span></a> - Interface in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Interface handling decomposition algorithms that can solve A &times; X = B.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html#DEFAULT_ABSOLUTE_ACCURACY">DEFAULT_ABSOLUTE_ACCURACY</a></span> - Static variable in class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">BaseAbstractUnivariateIntegrator</a></dt>
<dd>
<div class="block">Default absolute accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseSecantSolver.html#DEFAULT_ABSOLUTE_ACCURACY">DEFAULT_ABSOLUTE_ACCURACY</a></span> - Static variable in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseSecantSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BaseSecantSolver</a></dt>
<dd>
<div class="block">Default absolute accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/SecantSolver.html#DEFAULT_ABSOLUTE_ACCURACY">DEFAULT_ABSOLUTE_ACCURACY</a></span> - Static variable in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/SecantSolver.html" title="class in org.apache.commons.math3.analysis.solvers">SecantSolver</a></dt>
<dd>
<div class="block">Default absolute accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/CholeskyDecomposition.html#DEFAULT_ABSOLUTE_POSITIVITY_THRESHOLD">DEFAULT_ABSOLUTE_POSITIVITY_THRESHOLD</a></span> - Static variable in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/CholeskyDecomposition.html" title="class in org.apache.commons.math3.linear">CholeskyDecomposition</a></dt>
<dd>
<div class="block">Default threshold below which diagonal elements are considered null
 and matrix not positive definite.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/LoessInterpolator.html#DEFAULT_ACCURACY">DEFAULT_ACCURACY</a></span> - Static variable in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/LoessInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">LoessInterpolator</a></dt>
<dd>
<div class="block">Default value for accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/LoessInterpolator.html#DEFAULT_BANDWIDTH">DEFAULT_BANDWIDTH</a></span> - Static variable in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/LoessInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">LoessInterpolator</a></dt>
<dd>
<div class="block">Default value of the bandwidth parameter.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#DEFAULT_BIN_COUNT">DEFAULT_BIN_COUNT</a></span> - Static variable in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random">EmpiricalDistribution</a></dt>
<dd>
<div class="block">Default bin count</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/MicrosphereInterpolator.html#DEFAULT_BRIGHTNESS_EXPONENT">DEFAULT_BRIGHTNESS_EXPONENT</a></span> - Static variable in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/MicrosphereInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">MicrosphereInterpolator</a></dt>
<dd>
<div class="block">Default exponent used the weights calculation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html#DEFAULT_CHECKFEASABLECOUNT">DEFAULT_CHECKFEASABLECOUNT</a></span> - Static variable in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">CMAESOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Default value for <a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html#checkFeasableCount"><code>CMAESOptimizer.checkFeasableCount</code></a>: 0.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html#DEFAULT_DIAGONALONLY">DEFAULT_DIAGONALONLY</a></span> - Static variable in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">CMAESOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Default value for <a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html#diagonalOnly"><code>CMAESOptimizer.diagonalOnly</code></a>: 0.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/PoissonDistribution.html#DEFAULT_EPSILON">DEFAULT_EPSILON</a></span> - Static variable in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/PoissonDistribution.html" title="class in org.apache.commons.math3.distribution">PoissonDistribution</a></dt>
<dd>
<div class="block">Default convergence criterion.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/UnivariatePeriodicInterpolator.html#DEFAULT_EXTEND">DEFAULT_EXTEND</a></span> - Static variable in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/UnivariatePeriodicInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">UnivariatePeriodicInterpolator</a></dt>
<dd>
<div class="block">Default number of extension points of the samples array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#DEFAULT_FORMAT">DEFAULT_FORMAT</a></span> - Static variable in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">The default format for <a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear"><code>RealMatrix</code></a> objects.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/BOBYQAOptimizer.html#DEFAULT_INITIAL_RADIUS">DEFAULT_INITIAL_RADIUS</a></span> - Static variable in class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/BOBYQAOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">BOBYQAOptimizer</a></dt>
<dd>
<div class="block">Default value for <a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/BOBYQAOptimizer.html#initialTrustRegionRadius"><code>BOBYQAOptimizer.initialTrustRegionRadius</code></a>: 10.0 .</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BOBYQAOptimizer.html#DEFAULT_INITIAL_RADIUS">DEFAULT_INITIAL_RADIUS</a></span> - Static variable in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BOBYQAOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BOBYQAOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Default value for <a href="./org/apache/commons/math3/optimization/direct/BOBYQAOptimizer.html#initialTrustRegionRadius"><code>BOBYQAOptimizer.initialTrustRegionRadius</code></a>: 10.0 .</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/BetaDistribution.html#DEFAULT_INVERSE_ABSOLUTE_ACCURACY">DEFAULT_INVERSE_ABSOLUTE_ACCURACY</a></span> - Static variable in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/BetaDistribution.html" title="class in org.apache.commons.math3.distribution">BetaDistribution</a></dt>
<dd>
<div class="block">Default inverse cumulative probability accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/CauchyDistribution.html#DEFAULT_INVERSE_ABSOLUTE_ACCURACY">DEFAULT_INVERSE_ABSOLUTE_ACCURACY</a></span> - Static variable in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/CauchyDistribution.html" title="class in org.apache.commons.math3.distribution">CauchyDistribution</a></dt>
<dd>
<div class="block">Default inverse cumulative probability accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html#DEFAULT_INVERSE_ABSOLUTE_ACCURACY">DEFAULT_INVERSE_ABSOLUTE_ACCURACY</a></span> - Static variable in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html" title="class in org.apache.commons.math3.distribution">ChiSquaredDistribution</a></dt>
<dd>
<div class="block">Default inverse cumulative probability accuracy</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html#DEFAULT_INVERSE_ABSOLUTE_ACCURACY">DEFAULT_INVERSE_ABSOLUTE_ACCURACY</a></span> - Static variable in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html" title="class in org.apache.commons.math3.distribution">ExponentialDistribution</a></dt>
<dd>
<div class="block">Default inverse cumulative probability accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/FDistribution.html#DEFAULT_INVERSE_ABSOLUTE_ACCURACY">DEFAULT_INVERSE_ABSOLUTE_ACCURACY</a></span> - Static variable in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/FDistribution.html" title="class in org.apache.commons.math3.distribution">FDistribution</a></dt>
<dd>
<div class="block">Default inverse cumulative probability accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/GammaDistribution.html#DEFAULT_INVERSE_ABSOLUTE_ACCURACY">DEFAULT_INVERSE_ABSOLUTE_ACCURACY</a></span> - Static variable in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/GammaDistribution.html" title="class in org.apache.commons.math3.distribution">GammaDistribution</a></dt>
<dd>
<div class="block">Default inverse cumulative probability accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html#DEFAULT_INVERSE_ABSOLUTE_ACCURACY">DEFAULT_INVERSE_ABSOLUTE_ACCURACY</a></span> - Static variable in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html" title="class in org.apache.commons.math3.distribution">LogNormalDistribution</a></dt>
<dd>
<div class="block">Default inverse cumulative probability accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/NormalDistribution.html#DEFAULT_INVERSE_ABSOLUTE_ACCURACY">DEFAULT_INVERSE_ABSOLUTE_ACCURACY</a></span> - Static variable in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/NormalDistribution.html" title="class in org.apache.commons.math3.distribution">NormalDistribution</a></dt>
<dd>
<div class="block">Default inverse cumulative probability accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ParetoDistribution.html#DEFAULT_INVERSE_ABSOLUTE_ACCURACY">DEFAULT_INVERSE_ABSOLUTE_ACCURACY</a></span> - Static variable in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ParetoDistribution.html" title="class in org.apache.commons.math3.distribution">ParetoDistribution</a></dt>
<dd>
<div class="block">Default inverse cumulative probability accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/TDistribution.html#DEFAULT_INVERSE_ABSOLUTE_ACCURACY">DEFAULT_INVERSE_ABSOLUTE_ACCURACY</a></span> - Static variable in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/TDistribution.html" title="class in org.apache.commons.math3.distribution">TDistribution</a></dt>
<dd>
<div class="block">Default inverse cumulative probability accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html#DEFAULT_INVERSE_ABSOLUTE_ACCURACY">DEFAULT_INVERSE_ABSOLUTE_ACCURACY</a></span> - Static variable in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html" title="class in org.apache.commons.math3.distribution">UniformRealDistribution</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.2 not used anymore, will be removed in 4.0</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/WeibullDistribution.html#DEFAULT_INVERSE_ABSOLUTE_ACCURACY">DEFAULT_INVERSE_ABSOLUTE_ACCURACY</a></span> - Static variable in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/WeibullDistribution.html" title="class in org.apache.commons.math3.distribution">WeibullDistribution</a></dt>
<dd>
<div class="block">Default inverse cumulative probability accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html#DEFAULT_ISACTIVECMA">DEFAULT_ISACTIVECMA</a></span> - Static variable in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">CMAESOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Default value for <a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html#isActiveCMA"><code>CMAESOptimizer.isActiveCMA</code></a>: true.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/PoissonDistribution.html#DEFAULT_MAX_ITERATIONS">DEFAULT_MAX_ITERATIONS</a></span> - Static variable in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/PoissonDistribution.html" title="class in org.apache.commons.math3.distribution">PoissonDistribution</a></dt>
<dd>
<div class="block">Default maximum number of iterations for cumulative probability calculations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/AbstractLinearOptimizer.html#DEFAULT_MAX_ITERATIONS">DEFAULT_MAX_ITERATIONS</a></span> - Static variable in class org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/AbstractLinearOptimizer.html" title="class in org.apache.commons.math3.optimization.linear">AbstractLinearOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Default maximal number of iterations allowed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html#DEFAULT_MAX_ITERATIONS_COUNT">DEFAULT_MAX_ITERATIONS_COUNT</a></span> - Static variable in class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">BaseAbstractUnivariateIntegrator</a></dt>
<dd>
<div class="block">Default maximal iteration count.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html#DEFAULT_MAXITERATIONS">DEFAULT_MAXITERATIONS</a></span> - Static variable in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">CMAESOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Default value for <a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html#maxIterations"><code>CMAESOptimizer.maxIterations</code></a>: 30000.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/MicrosphereInterpolator.html#DEFAULT_MICROSPHERE_ELEMENTS">DEFAULT_MICROSPHERE_ELEMENTS</a></span> - Static variable in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/MicrosphereInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">MicrosphereInterpolator</a></dt>
<dd>
<div class="block">Default number of surface elements that composes the microsphere.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html#DEFAULT_MIN_ITERATIONS_COUNT">DEFAULT_MIN_ITERATIONS_COUNT</a></span> - Static variable in class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">BaseAbstractUnivariateIntegrator</a></dt>
<dd>
<div class="block">Default minimal iteration count.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/ranking/NaturalRanking.html#DEFAULT_NAN_STRATEGY">DEFAULT_NAN_STRATEGY</a></span> - Static variable in class org.apache.commons.math3.stat.ranking.<a href="./org/apache/commons/math3/stat/ranking/NaturalRanking.html" title="class in org.apache.commons.math3.stat.ranking">NaturalRanking</a></dt>
<dd>
<div class="block">default NaN strategy</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/VectorFormat.html#DEFAULT_PREFIX">DEFAULT_PREFIX</a></span> - Static variable in class org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/VectorFormat.html" title="class in org.apache.commons.math3.geometry">VectorFormat</a></dt>
<dd>
<div class="block">The default prefix: "{".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html#DEFAULT_RANDOMGENERATOR">DEFAULT_RANDOMGENERATOR</a></span> - Static variable in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">CMAESOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Default value for <a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html#random"><code>CMAESOptimizer.random</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html#DEFAULT_RELATIVE_ACCURACY">DEFAULT_RELATIVE_ACCURACY</a></span> - Static variable in class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">BaseAbstractUnivariateIntegrator</a></dt>
<dd>
<div class="block">Default relative accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/CholeskyDecomposition.html#DEFAULT_RELATIVE_SYMMETRY_THRESHOLD">DEFAULT_RELATIVE_SYMMETRY_THRESHOLD</a></span> - Static variable in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/CholeskyDecomposition.html" title="class in org.apache.commons.math3.linear">CholeskyDecomposition</a></dt>
<dd>
<div class="block">Default threshold above which off-diagonal elements are considered too different
 and matrix not symmetric.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/LoessInterpolator.html#DEFAULT_ROBUSTNESS_ITERS">DEFAULT_ROBUSTNESS_ITERS</a></span> - Static variable in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/LoessInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">LoessInterpolator</a></dt>
<dd>
<div class="block">Default value of the number of robustness iterations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/VectorFormat.html#DEFAULT_SEPARATOR">DEFAULT_SEPARATOR</a></span> - Static variable in class org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/VectorFormat.html" title="class in org.apache.commons.math3.geometry">VectorFormat</a></dt>
<dd>
<div class="block">The default separator: ", ".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html#DEFAULT_STOPFITNESS">DEFAULT_STOPFITNESS</a></span> - Static variable in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">CMAESOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Default value for <a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html#stopFitness"><code>CMAESOptimizer.stopFitness</code></a>: 0.0.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/BOBYQAOptimizer.html#DEFAULT_STOPPING_RADIUS">DEFAULT_STOPPING_RADIUS</a></span> - Static variable in class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/BOBYQAOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">BOBYQAOptimizer</a></dt>
<dd>
<div class="block">Default value for <a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/BOBYQAOptimizer.html#stoppingTrustRegionRadius"><code>BOBYQAOptimizer.stoppingTrustRegionRadius</code></a>: 1.0E-8 .</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BOBYQAOptimizer.html#DEFAULT_STOPPING_RADIUS">DEFAULT_STOPPING_RADIUS</a></span> - Static variable in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BOBYQAOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BOBYQAOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Default value for <a href="./org/apache/commons/math3/optimization/direct/BOBYQAOptimizer.html#stoppingTrustRegionRadius"><code>BOBYQAOptimizer.stoppingTrustRegionRadius</code></a>: 1.0E-8 .</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/VectorFormat.html#DEFAULT_SUFFIX">DEFAULT_SUFFIX</a></span> - Static variable in class org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/VectorFormat.html" title="class in org.apache.commons.math3.geometry">VectorFormat</a></dt>
<dd>
<div class="block">The default suffix: "}".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/ranking/NaturalRanking.html#DEFAULT_TIES_STRATEGY">DEFAULT_TIES_STRATEGY</a></span> - Static variable in class org.apache.commons.math3.stat.ranking.<a href="./org/apache/commons/math3/stat/ranking/NaturalRanking.html" title="class in org.apache.commons.math3.stat.ranking">NaturalRanking</a></dt>
<dd>
<div class="block">default ties strategy</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#DEFAULT_ZERO_TOLERANCE">DEFAULT_ZERO_TOLERANCE</a></span> - Static variable in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Default Tolerance for having a value considered zero.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/DefaultFieldMatrixChangingVisitor.html" title="class in org.apache.commons.math3.linear"><span class="strong">DefaultFieldMatrixChangingVisitor</span></a>&lt;<a href="./org/apache/commons/math3/linear/DefaultFieldMatrixChangingVisitor.html" title="type parameter in DefaultFieldMatrixChangingVisitor">T</a> extends <a href="./org/apache/commons/math3/FieldElement.html" title="interface in org.apache.commons.math3">FieldElement</a>&lt;<a href="./org/apache/commons/math3/linear/DefaultFieldMatrixChangingVisitor.html" title="type parameter in DefaultFieldMatrixChangingVisitor">T</a>&gt;&gt; - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Default implementation of the <a href="./org/apache/commons/math3/linear/FieldMatrixChangingVisitor.html" title="interface in org.apache.commons.math3.linear"><code>FieldMatrixChangingVisitor</code></a> interface.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DefaultFieldMatrixChangingVisitor.html#DefaultFieldMatrixChangingVisitor(T)">DefaultFieldMatrixChangingVisitor(T)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DefaultFieldMatrixChangingVisitor.html" title="class in org.apache.commons.math3.linear">DefaultFieldMatrixChangingVisitor</a></dt>
<dd>
<div class="block">Build a new instance.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/DefaultFieldMatrixPreservingVisitor.html" title="class in org.apache.commons.math3.linear"><span class="strong">DefaultFieldMatrixPreservingVisitor</span></a>&lt;<a href="./org/apache/commons/math3/linear/DefaultFieldMatrixPreservingVisitor.html" title="type parameter in DefaultFieldMatrixPreservingVisitor">T</a> extends <a href="./org/apache/commons/math3/FieldElement.html" title="interface in org.apache.commons.math3">FieldElement</a>&lt;<a href="./org/apache/commons/math3/linear/DefaultFieldMatrixPreservingVisitor.html" title="type parameter in DefaultFieldMatrixPreservingVisitor">T</a>&gt;&gt; - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Default implementation of the <a href="./org/apache/commons/math3/linear/FieldMatrixPreservingVisitor.html" title="interface in org.apache.commons.math3.linear"><code>FieldMatrixPreservingVisitor</code></a> interface.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DefaultFieldMatrixPreservingVisitor.html#DefaultFieldMatrixPreservingVisitor(T)">DefaultFieldMatrixPreservingVisitor(T)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DefaultFieldMatrixPreservingVisitor.html" title="class in org.apache.commons.math3.linear">DefaultFieldMatrixPreservingVisitor</a></dt>
<dd>
<div class="block">Build a new instance.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/DefaultIterativeLinearSolverEvent.html" title="class in org.apache.commons.math3.linear"><span class="strong">DefaultIterativeLinearSolverEvent</span></a> - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">A default concrete implementation of the abstract class
 <a href="./org/apache/commons/math3/linear/IterativeLinearSolverEvent.html" title="class in org.apache.commons.math3.linear"><code>IterativeLinearSolverEvent</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DefaultIterativeLinearSolverEvent.html#DefaultIterativeLinearSolverEvent(java.lang.Object, int, org.apache.commons.math3.linear.RealVector, org.apache.commons.math3.linear.RealVector, org.apache.commons.math3.linear.RealVector, double)">DefaultIterativeLinearSolverEvent(Object, int, RealVector, RealVector, RealVector, double)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DefaultIterativeLinearSolverEvent.html" title="class in org.apache.commons.math3.linear">DefaultIterativeLinearSolverEvent</a></dt>
<dd>
<div class="block">Creates a new instance of this class.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DefaultIterativeLinearSolverEvent.html#DefaultIterativeLinearSolverEvent(java.lang.Object, int, org.apache.commons.math3.linear.RealVector, org.apache.commons.math3.linear.RealVector, double)">DefaultIterativeLinearSolverEvent(Object, int, RealVector, RealVector, double)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DefaultIterativeLinearSolverEvent.html" title="class in org.apache.commons.math3.linear">DefaultIterativeLinearSolverEvent</a></dt>
<dd>
<div class="block">Creates a new instance of this class.</div>
</dd>
<dt><a href="./org/apache/commons/math3/filter/DefaultMeasurementModel.html" title="class in org.apache.commons.math3.filter"><span class="strong">DefaultMeasurementModel</span></a> - Class in <a href="./org/apache/commons/math3/filter/package-summary.html">org.apache.commons.math3.filter</a></dt>
<dd>
<div class="block">Default implementation of a <a href="./org/apache/commons/math3/filter/MeasurementModel.html" title="interface in org.apache.commons.math3.filter"><code>MeasurementModel</code></a> for the use with a <a href="./org/apache/commons/math3/filter/KalmanFilter.html" title="class in org.apache.commons.math3.filter"><code>KalmanFilter</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/filter/DefaultMeasurementModel.html#DefaultMeasurementModel(double[][], double[][])">DefaultMeasurementModel(double[][], double[][])</a></span> - Constructor for class org.apache.commons.math3.filter.<a href="./org/apache/commons/math3/filter/DefaultMeasurementModel.html" title="class in org.apache.commons.math3.filter">DefaultMeasurementModel</a></dt>
<dd>
<div class="block">Create a new <a href="./org/apache/commons/math3/filter/MeasurementModel.html" title="interface in org.apache.commons.math3.filter"><code>MeasurementModel</code></a>, taking double arrays as input parameters for the
 respective measurement matrix and noise.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/filter/DefaultMeasurementModel.html#DefaultMeasurementModel(org.apache.commons.math3.linear.RealMatrix, org.apache.commons.math3.linear.RealMatrix)">DefaultMeasurementModel(RealMatrix, RealMatrix)</a></span> - Constructor for class org.apache.commons.math3.filter.<a href="./org/apache/commons/math3/filter/DefaultMeasurementModel.html" title="class in org.apache.commons.math3.filter">DefaultMeasurementModel</a></dt>
<dd>
<div class="block">Create a new <a href="./org/apache/commons/math3/filter/MeasurementModel.html" title="interface in org.apache.commons.math3.filter"><code>MeasurementModel</code></a>, taking <a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear"><code>RealMatrix</code></a> objects
 as input parameters for the respective measurement matrix and noise.</div>
</dd>
<dt><a href="./org/apache/commons/math3/filter/DefaultProcessModel.html" title="class in org.apache.commons.math3.filter"><span class="strong">DefaultProcessModel</span></a> - Class in <a href="./org/apache/commons/math3/filter/package-summary.html">org.apache.commons.math3.filter</a></dt>
<dd>
<div class="block">Default implementation of a <a href="./org/apache/commons/math3/filter/ProcessModel.html" title="interface in org.apache.commons.math3.filter"><code>ProcessModel</code></a> for the use with a <a href="./org/apache/commons/math3/filter/KalmanFilter.html" title="class in org.apache.commons.math3.filter"><code>KalmanFilter</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/filter/DefaultProcessModel.html#DefaultProcessModel(double[][], double[][], double[][], double[], double[][])">DefaultProcessModel(double[][], double[][], double[][], double[], double[][])</a></span> - Constructor for class org.apache.commons.math3.filter.<a href="./org/apache/commons/math3/filter/DefaultProcessModel.html" title="class in org.apache.commons.math3.filter">DefaultProcessModel</a></dt>
<dd>
<div class="block">Create a new <a href="./org/apache/commons/math3/filter/ProcessModel.html" title="interface in org.apache.commons.math3.filter"><code>ProcessModel</code></a>, taking double arrays as input parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/filter/DefaultProcessModel.html#DefaultProcessModel(double[][], double[][], double[][])">DefaultProcessModel(double[][], double[][], double[][])</a></span> - Constructor for class org.apache.commons.math3.filter.<a href="./org/apache/commons/math3/filter/DefaultProcessModel.html" title="class in org.apache.commons.math3.filter">DefaultProcessModel</a></dt>
<dd>
<div class="block">Create a new <a href="./org/apache/commons/math3/filter/ProcessModel.html" title="interface in org.apache.commons.math3.filter"><code>ProcessModel</code></a>, taking double arrays as input parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/filter/DefaultProcessModel.html#DefaultProcessModel(org.apache.commons.math3.linear.RealMatrix, org.apache.commons.math3.linear.RealMatrix, org.apache.commons.math3.linear.RealMatrix, org.apache.commons.math3.linear.RealVector, org.apache.commons.math3.linear.RealMatrix)">DefaultProcessModel(RealMatrix, RealMatrix, RealMatrix, RealVector, RealMatrix)</a></span> - Constructor for class org.apache.commons.math3.filter.<a href="./org/apache/commons/math3/filter/DefaultProcessModel.html" title="class in org.apache.commons.math3.filter">DefaultProcessModel</a></dt>
<dd>
<div class="block">Create a new <a href="./org/apache/commons/math3/filter/ProcessModel.html" title="interface in org.apache.commons.math3.filter"><code>ProcessModel</code></a>, taking double arrays as input parameters.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/DefaultRealMatrixChangingVisitor.html" title="class in org.apache.commons.math3.linear"><span class="strong">DefaultRealMatrixChangingVisitor</span></a> - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Default implementation of the <a href="./org/apache/commons/math3/linear/RealMatrixChangingVisitor.html" title="interface in org.apache.commons.math3.linear"><code>RealMatrixChangingVisitor</code></a> interface.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DefaultRealMatrixChangingVisitor.html#DefaultRealMatrixChangingVisitor()">DefaultRealMatrixChangingVisitor()</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DefaultRealMatrixChangingVisitor.html" title="class in org.apache.commons.math3.linear">DefaultRealMatrixChangingVisitor</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/linear/DefaultRealMatrixPreservingVisitor.html" title="class in org.apache.commons.math3.linear"><span class="strong">DefaultRealMatrixPreservingVisitor</span></a> - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Default implementation of the <a href="./org/apache/commons/math3/linear/RealMatrixPreservingVisitor.html" title="interface in org.apache.commons.math3.linear"><code>RealMatrixPreservingVisitor</code></a> interface.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DefaultRealMatrixPreservingVisitor.html#DefaultRealMatrixPreservingVisitor()">DefaultRealMatrixPreservingVisitor()</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DefaultRealMatrixPreservingVisitor.html" title="class in org.apache.commons.math3.linear">DefaultRealMatrixPreservingVisitor</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/util/DefaultTransformer.html" title="class in org.apache.commons.math3.util"><span class="strong">DefaultTransformer</span></a> - Class in <a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a></dt>
<dd>
<div class="block">A Default NumberTransformer for java.lang.Numbers and Numeric Strings.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/DefaultTransformer.html#DefaultTransformer()">DefaultTransformer()</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/DefaultTransformer.html" title="class in org.apache.commons.math3.util">DefaultTransformer</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.html#degree()">degree()</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunction</a></dt>
<dd>
<div class="block">Returns the degree of the polynomial.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionLagrangeForm.html#degree()">degree()</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionLagrangeForm.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunctionLagrangeForm</a></dt>
<dd>
<div class="block">Returns the degree of the polynomial.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionNewtonForm.html#degree()">degree()</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionNewtonForm.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunctionNewtonForm</a></dt>
<dd>
<div class="block">Returns the degree of the polynomial.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/utilities/AVLTree.html#delete(T)">delete(T)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.utilities.<a href="./org/apache/commons/math3/geometry/partitioning/utilities/AVLTree.html" title="class in org.apache.commons.math3.geometry.partitioning.utilities">AVLTree</a></dt>
<dd>
<div class="block">Delete an element from the tree.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/utilities/AVLTree.Node.html#delete()">delete()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.utilities.<a href="./org/apache/commons/math3/geometry/partitioning/utilities/AVLTree.Node.html" title="class in org.apache.commons.math3.geometry.partitioning.utilities">AVLTree.Node</a></dt>
<dd>
<div class="block">Delete the node from the tree.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/Network.html#deleteLink(org.apache.commons.math3.ml.neuralnet.Neuron, org.apache.commons.math3.ml.neuralnet.Neuron)">deleteLink(Neuron, Neuron)</a></span> - Method in class org.apache.commons.math3.ml.neuralnet.<a href="./org/apache/commons/math3/ml/neuralnet/Network.html" title="class in org.apache.commons.math3.ml.neuralnet">Network</a></dt>
<dd>
<div class="block">Deletes the link between neurons <code>a</code> and <code>b</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/Network.html#deleteNeuron(org.apache.commons.math3.ml.neuralnet.Neuron)">deleteNeuron(Neuron)</a></span> - Method in class org.apache.commons.math3.ml.neuralnet.<a href="./org/apache/commons/math3/ml/neuralnet/Network.html" title="class in org.apache.commons.math3.ml.neuralnet">Network</a></dt>
<dd>
<div class="block">Deletes a neuron.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/BetaDistribution.html#density(double)">density(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/BetaDistribution.html" title="class in org.apache.commons.math3.distribution">BetaDistribution</a></dt>
<dd>
<div class="block">Returns the probability density function (PDF) of this distribution
 evaluated at the specified point <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/CauchyDistribution.html#density(double)">density(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/CauchyDistribution.html" title="class in org.apache.commons.math3.distribution">CauchyDistribution</a></dt>
<dd>
<div class="block">Returns the probability density function (PDF) of this distribution
 evaluated at the specified point <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html#density(double)">density(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html" title="class in org.apache.commons.math3.distribution">ChiSquaredDistribution</a></dt>
<dd>
<div class="block">Returns the probability density function (PDF) of this distribution
 evaluated at the specified point <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/EnumeratedRealDistribution.html#density(double)">density(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/EnumeratedRealDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedRealDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according to
 this distribution, this method returns <code>P(X = x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html#density(double)">density(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html" title="class in org.apache.commons.math3.distribution">ExponentialDistribution</a></dt>
<dd>
<div class="block">Returns the probability density function (PDF) of this distribution
 evaluated at the specified point <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/FDistribution.html#density(double)">density(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/FDistribution.html" title="class in org.apache.commons.math3.distribution">FDistribution</a></dt>
<dd>
<div class="block">Returns the probability density function (PDF) of this distribution
 evaluated at the specified point <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/GammaDistribution.html#density(double)">density(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/GammaDistribution.html" title="class in org.apache.commons.math3.distribution">GammaDistribution</a></dt>
<dd>
<div class="block">Returns the probability density function (PDF) of this distribution
 evaluated at the specified point <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LevyDistribution.html#density(double)">density(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LevyDistribution.html" title="class in org.apache.commons.math3.distribution">LevyDistribution</a></dt>
<dd>
<div class="block">Returns the probability density function (PDF) of this distribution
 evaluated at the specified point <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html#density(double)">density(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html" title="class in org.apache.commons.math3.distribution">LogNormalDistribution</a></dt>
<dd>
<div class="block">Returns the probability density function (PDF) of this distribution
 evaluated at the specified point <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/MixtureMultivariateRealDistribution.html#density(double[])">density(double[])</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/MixtureMultivariateRealDistribution.html" title="class in org.apache.commons.math3.distribution">MixtureMultivariateRealDistribution</a></dt>
<dd>
<div class="block">Returns the probability density function (PDF) of this distribution
 evaluated at the specified point <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/MultivariateNormalDistribution.html#density(double[])">density(double[])</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/MultivariateNormalDistribution.html" title="class in org.apache.commons.math3.distribution">MultivariateNormalDistribution</a></dt>
<dd>
<div class="block">Returns the probability density function (PDF) of this distribution
 evaluated at the specified point <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/MultivariateRealDistribution.html#density(double[])">density(double[])</a></span> - Method in interface org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/MultivariateRealDistribution.html" title="interface in org.apache.commons.math3.distribution">MultivariateRealDistribution</a></dt>
<dd>
<div class="block">Returns the probability density function (PDF) of this distribution
 evaluated at the specified point <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/NormalDistribution.html#density(double)">density(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/NormalDistribution.html" title="class in org.apache.commons.math3.distribution">NormalDistribution</a></dt>
<dd>
<div class="block">Returns the probability density function (PDF) of this distribution
 evaluated at the specified point <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ParetoDistribution.html#density(double)">density(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ParetoDistribution.html" title="class in org.apache.commons.math3.distribution">ParetoDistribution</a></dt>
<dd>
<div class="block">Returns the probability density function (PDF) of this distribution
 evaluated at the specified point <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/RealDistribution.html#density(double)">density(double)</a></span> - Method in interface org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/RealDistribution.html" title="interface in org.apache.commons.math3.distribution">RealDistribution</a></dt>
<dd>
<div class="block">Returns the probability density function (PDF) of this distribution
 evaluated at the specified point <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/TDistribution.html#density(double)">density(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/TDistribution.html" title="class in org.apache.commons.math3.distribution">TDistribution</a></dt>
<dd>
<div class="block">Returns the probability density function (PDF) of this distribution
 evaluated at the specified point <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/TriangularDistribution.html#density(double)">density(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/TriangularDistribution.html" title="class in org.apache.commons.math3.distribution">TriangularDistribution</a></dt>
<dd>
<div class="block">Returns the probability density function (PDF) of this distribution
 evaluated at the specified point <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html#density(double)">density(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html" title="class in org.apache.commons.math3.distribution">UniformRealDistribution</a></dt>
<dd>
<div class="block">Returns the probability density function (PDF) of this distribution
 evaluated at the specified point <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/WeibullDistribution.html#density(double)">density(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/WeibullDistribution.html" title="class in org.apache.commons.math3.distribution">WeibullDistribution</a></dt>
<dd>
<div class="block">Returns the probability density function (PDF) of this distribution
 evaluated at the specified point <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#density(double)">density(double)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random">EmpiricalDistribution</a></dt>
<dd>
<div class="block">Returns the probability density function (PDF) of this distribution
 evaluated at the specified point <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/DifferentiableUnivariateFunction.html#derivative()">derivative()</a></span> - Method in interface org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/DifferentiableUnivariateFunction.html" title="interface in org.apache.commons.math3.analysis">DifferentiableUnivariateFunction</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Returns the derivative of the function</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/DifferentiableUnivariateMatrixFunction.html#derivative()">derivative()</a></span> - Method in interface org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/DifferentiableUnivariateMatrixFunction.html" title="interface in org.apache.commons.math3.analysis">DifferentiableUnivariateMatrixFunction</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Returns the derivative of the function</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/DifferentiableUnivariateVectorFunction.html#derivative()">derivative()</a></span> - Method in interface org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/DifferentiableUnivariateVectorFunction.html" title="interface in org.apache.commons.math3.analysis">DifferentiableUnivariateVectorFunction</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Returns the derivative of the function</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Acos.html#derivative()">derivative()</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Acos.html" title="class in org.apache.commons.math3.analysis.function">Acos</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/analysis/function/Acos.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)"><code>Acos.value(DerivativeStructure)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Acosh.html#derivative()">derivative()</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Acosh.html" title="class in org.apache.commons.math3.analysis.function">Acosh</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/analysis/function/Acosh.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)"><code>Acosh.value(DerivativeStructure)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Asin.html#derivative()">derivative()</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Asin.html" title="class in org.apache.commons.math3.analysis.function">Asin</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/analysis/function/Asin.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)"><code>Asin.value(DerivativeStructure)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Asinh.html#derivative()">derivative()</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Asinh.html" title="class in org.apache.commons.math3.analysis.function">Asinh</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/analysis/function/Asinh.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)"><code>Asinh.value(DerivativeStructure)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Atan.html#derivative()">derivative()</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Atan.html" title="class in org.apache.commons.math3.analysis.function">Atan</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/analysis/function/Atan.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)"><code>Atan.value(DerivativeStructure)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Atanh.html#derivative()">derivative()</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Atanh.html" title="class in org.apache.commons.math3.analysis.function">Atanh</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/analysis/function/Atanh.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)"><code>Atanh.value(DerivativeStructure)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Cbrt.html#derivative()">derivative()</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Cbrt.html" title="class in org.apache.commons.math3.analysis.function">Cbrt</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/analysis/function/Cbrt.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)"><code>Cbrt.value(DerivativeStructure)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Constant.html#derivative()">derivative()</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Constant.html" title="class in org.apache.commons.math3.analysis.function">Constant</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/analysis/function/Constant.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)"><code>Constant.value(DerivativeStructure)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Cos.html#derivative()">derivative()</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Cos.html" title="class in org.apache.commons.math3.analysis.function">Cos</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/analysis/function/Cos.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)"><code>Cos.value(DerivativeStructure)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Cosh.html#derivative()">derivative()</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Cosh.html" title="class in org.apache.commons.math3.analysis.function">Cosh</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/analysis/function/Cosh.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)"><code>Cosh.value(DerivativeStructure)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Exp.html#derivative()">derivative()</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Exp.html" title="class in org.apache.commons.math3.analysis.function">Exp</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/analysis/function/Exp.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)"><code>Exp.value(DerivativeStructure)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Expm1.html#derivative()">derivative()</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Expm1.html" title="class in org.apache.commons.math3.analysis.function">Expm1</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/analysis/function/Expm1.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)"><code>Expm1.value(DerivativeStructure)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Gaussian.html#derivative()">derivative()</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Gaussian.html" title="class in org.apache.commons.math3.analysis.function">Gaussian</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/analysis/function/Gaussian.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)"><code>Gaussian.value(DerivativeStructure)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/HarmonicOscillator.html#derivative()">derivative()</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/HarmonicOscillator.html" title="class in org.apache.commons.math3.analysis.function">HarmonicOscillator</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/analysis/function/HarmonicOscillator.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)"><code>HarmonicOscillator.value(DerivativeStructure)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Identity.html#derivative()">derivative()</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Identity.html" title="class in org.apache.commons.math3.analysis.function">Identity</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/analysis/function/Identity.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)"><code>Identity.value(DerivativeStructure)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Inverse.html#derivative()">derivative()</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Inverse.html" title="class in org.apache.commons.math3.analysis.function">Inverse</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/analysis/function/Inverse.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)"><code>Inverse.value(DerivativeStructure)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Log.html#derivative()">derivative()</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Log.html" title="class in org.apache.commons.math3.analysis.function">Log</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/analysis/function/Log.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)"><code>Log.value(DerivativeStructure)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Log10.html#derivative()">derivative()</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Log10.html" title="class in org.apache.commons.math3.analysis.function">Log10</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/analysis/function/Log10.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)"><code>Log10.value(DerivativeStructure)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Log1p.html#derivative()">derivative()</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Log1p.html" title="class in org.apache.commons.math3.analysis.function">Log1p</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/analysis/function/Log1p.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)"><code>Log1p.value(DerivativeStructure)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Logistic.html#derivative()">derivative()</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Logistic.html" title="class in org.apache.commons.math3.analysis.function">Logistic</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/analysis/function/Logistic.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)"><code>Logistic.value(DerivativeStructure)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Logit.html#derivative()">derivative()</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Logit.html" title="class in org.apache.commons.math3.analysis.function">Logit</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/analysis/function/Logit.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)"><code>Logit.value(DerivativeStructure)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Minus.html#derivative()">derivative()</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Minus.html" title="class in org.apache.commons.math3.analysis.function">Minus</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/analysis/function/Minus.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)"><code>Minus.value(DerivativeStructure)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Power.html#derivative()">derivative()</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Power.html" title="class in org.apache.commons.math3.analysis.function">Power</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/analysis/function/Power.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)"><code>Power.value(DerivativeStructure)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Sigmoid.html#derivative()">derivative()</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Sigmoid.html" title="class in org.apache.commons.math3.analysis.function">Sigmoid</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/analysis/function/Sigmoid.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)"><code>Sigmoid.value(DerivativeStructure)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Sin.html#derivative()">derivative()</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Sin.html" title="class in org.apache.commons.math3.analysis.function">Sin</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/analysis/function/Sin.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)"><code>Sin.value(DerivativeStructure)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Sinc.html#derivative()">derivative()</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Sinc.html" title="class in org.apache.commons.math3.analysis.function">Sinc</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/analysis/function/Sinc.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)"><code>Sinc.value(DerivativeStructure)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Sinh.html#derivative()">derivative()</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Sinh.html" title="class in org.apache.commons.math3.analysis.function">Sinh</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/analysis/function/Sinh.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)"><code>Sinh.value(DerivativeStructure)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Sqrt.html#derivative()">derivative()</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Sqrt.html" title="class in org.apache.commons.math3.analysis.function">Sqrt</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/analysis/function/Sqrt.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)"><code>Sqrt.value(DerivativeStructure)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Tan.html#derivative()">derivative()</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Tan.html" title="class in org.apache.commons.math3.analysis.function">Tan</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/analysis/function/Tan.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)"><code>Tan.value(DerivativeStructure)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Tanh.html#derivative()">derivative()</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Tanh.html" title="class in org.apache.commons.math3.analysis.function">Tanh</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/analysis/function/Tanh.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)"><code>Tanh.value(DerivativeStructure)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.html#derivative()">derivative()</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunction</a></dt>
<dd>
<div class="block">Returns the derivative as a <a href="./org/apache/commons/math3/analysis/UnivariateFunction.html" title="interface in org.apache.commons.math3.analysis"><code>UnivariateFunction</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialSplineFunction.html#derivative()">derivative()</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialSplineFunction.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialSplineFunction</a></dt>
<dd>
<div class="block">Get the derivative of the polynomial spline function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/FieldHermiteInterpolator.html#derivatives(T, int)">derivatives(T, int)</a></span> - Method in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/FieldHermiteInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">FieldHermiteInterpolator</a></dt>
<dd>
<div class="block">Interpolate value and first derivatives at a specified abscissa.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation"><span class="strong">DerivativeStructure</span></a> - Class in <a href="./org/apache/commons/math3/analysis/differentiation/package-summary.html">org.apache.commons.math3.analysis.differentiation</a></dt>
<dd>
<div class="block">Class representing both the value and the differentials of a function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#DerivativeStructure(int, int)">DerivativeStructure(int, int)</a></span> - Constructor for class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Build an instance with all values and derivatives set to 0.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#DerivativeStructure(int, int, double)">DerivativeStructure(int, int, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Build an instance representing a constant value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#DerivativeStructure(int, int, int, double)">DerivativeStructure(int, int, int, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Build an instance representing a variable.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#DerivativeStructure(double, org.apache.commons.math3.analysis.differentiation.DerivativeStructure, double, org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">DerivativeStructure(double, DerivativeStructure, double, DerivativeStructure)</a></span> - Constructor for class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Linear combination constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#DerivativeStructure(double, org.apache.commons.math3.analysis.differentiation.DerivativeStructure, double, org.apache.commons.math3.analysis.differentiation.DerivativeStructure, double, org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">DerivativeStructure(double, DerivativeStructure, double, DerivativeStructure, double, DerivativeStructure)</a></span> - Constructor for class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Linear combination constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#DerivativeStructure(double, org.apache.commons.math3.analysis.differentiation.DerivativeStructure, double, org.apache.commons.math3.analysis.differentiation.DerivativeStructure, double, org.apache.commons.math3.analysis.differentiation.DerivativeStructure, double, org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">DerivativeStructure(double, DerivativeStructure, double, DerivativeStructure, double, DerivativeStructure, double, DerivativeStructure)</a></span> - Constructor for class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Linear combination constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#DerivativeStructure(int, int, double...)">DerivativeStructure(int, int, double...)</a></span> - Constructor for class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Build an instance from all its derivatives.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive"><span class="strong">DescriptiveStatistics</span></a> - Class in <a href="./org/apache/commons/math3/stat/descriptive/package-summary.html">org.apache.commons.math3.stat.descriptive</a></dt>
<dd>
<div class="block">Maintains a dataset of values of a single variable and computes descriptive
 statistics based on stored data.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#DescriptiveStatistics()">DescriptiveStatistics()</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Construct a DescriptiveStatistics instance with an infinite window</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#DescriptiveStatistics(int)">DescriptiveStatistics(int)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Construct a DescriptiveStatistics instance with the specified window</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#DescriptiveStatistics(double[])">DescriptiveStatistics(double[])</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Construct a DescriptiveStatistics instance with an infinite window
 and the initial data values in double[] initialDoubleArray.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#DescriptiveStatistics(org.apache.commons.math3.stat.descriptive.DescriptiveStatistics)">DescriptiveStatistics(DescriptiveStatistics)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Copy constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#deserializeRealMatrix(java.lang.Object, java.lang.String, java.io.ObjectInputStream)">deserializeRealMatrix(Object, String, ObjectInputStream)</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Deserialize  a <a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear"><code>RealMatrix</code></a> field in a class.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#deserializeRealVector(java.lang.Object, java.lang.String, java.io.ObjectInputStream)">deserializeRealVector(Object, String, ObjectInputStream)</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Deserialize  a <a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear"><code>RealVector</code></a> field in a class.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TTest.html#df(double, double, double, double)">df(double, double, double, double)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TTest.html" title="class in org.apache.commons.math3.stat.inference">TTest</a></dt>
<dd>
<div class="block">Computes approximate degrees of freedom for 2-sample t-test.</div>
</dd>
<dt><a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp"><span class="strong">Dfp</span></a> - Class in <a href="./org/apache/commons/math3/dfp/package-summary.html">org.apache.commons.math3.dfp</a></dt>
<dd>
<div class="block">Decimal floating point library for Java</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#Dfp(org.apache.commons.math3.dfp.DfpField)">Dfp(DfpField)</a></span> - Constructor for class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Makes an instance with a value of zero.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#Dfp(org.apache.commons.math3.dfp.DfpField, byte)">Dfp(DfpField, byte)</a></span> - Constructor for class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Create an instance from a byte value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#Dfp(org.apache.commons.math3.dfp.DfpField, int)">Dfp(DfpField, int)</a></span> - Constructor for class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Create an instance from an int value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#Dfp(org.apache.commons.math3.dfp.DfpField, long)">Dfp(DfpField, long)</a></span> - Constructor for class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Create an instance from a long value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#Dfp(org.apache.commons.math3.dfp.DfpField, double)">Dfp(DfpField, double)</a></span> - Constructor for class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Create an instance from a double value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#Dfp(org.apache.commons.math3.dfp.Dfp)">Dfp(Dfp)</a></span> - Constructor for class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Copy constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#Dfp(org.apache.commons.math3.dfp.DfpField, java.lang.String)">Dfp(DfpField, String)</a></span> - Constructor for class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Create an instance from a String representation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#Dfp(org.apache.commons.math3.dfp.DfpField, byte, byte)">Dfp(DfpField, byte, byte)</a></span> - Constructor for class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Creates an instance with a non-finite value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#dfp2sci()">dfp2sci()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Convert an instance to a string using scientific notation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#dfp2string()">dfp2string()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Convert an instance to a string using normal notation.</div>
</dd>
<dt><a href="./org/apache/commons/math3/dfp/DfpDec.html" title="class in org.apache.commons.math3.dfp"><span class="strong">DfpDec</span></a> - Class in <a href="./org/apache/commons/math3/dfp/package-summary.html">org.apache.commons.math3.dfp</a></dt>
<dd>
<div class="block">Subclass of <a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp"><code>Dfp</code></a> which hides the radix-10000 artifacts of the superclass.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpDec.html#DfpDec(org.apache.commons.math3.dfp.DfpField)">DfpDec(DfpField)</a></span> - Constructor for class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpDec.html" title="class in org.apache.commons.math3.dfp">DfpDec</a></dt>
<dd>
<div class="block">Makes an instance with a value of zero.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpDec.html#DfpDec(org.apache.commons.math3.dfp.DfpField, byte)">DfpDec(DfpField, byte)</a></span> - Constructor for class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpDec.html" title="class in org.apache.commons.math3.dfp">DfpDec</a></dt>
<dd>
<div class="block">Create an instance from a byte value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpDec.html#DfpDec(org.apache.commons.math3.dfp.DfpField, int)">DfpDec(DfpField, int)</a></span> - Constructor for class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpDec.html" title="class in org.apache.commons.math3.dfp">DfpDec</a></dt>
<dd>
<div class="block">Create an instance from an int value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpDec.html#DfpDec(org.apache.commons.math3.dfp.DfpField, long)">DfpDec(DfpField, long)</a></span> - Constructor for class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpDec.html" title="class in org.apache.commons.math3.dfp">DfpDec</a></dt>
<dd>
<div class="block">Create an instance from a long value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpDec.html#DfpDec(org.apache.commons.math3.dfp.DfpField, double)">DfpDec(DfpField, double)</a></span> - Constructor for class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpDec.html" title="class in org.apache.commons.math3.dfp">DfpDec</a></dt>
<dd>
<div class="block">Create an instance from a double value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpDec.html#DfpDec(org.apache.commons.math3.dfp.Dfp)">DfpDec(Dfp)</a></span> - Constructor for class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpDec.html" title="class in org.apache.commons.math3.dfp">DfpDec</a></dt>
<dd>
<div class="block">Copy constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpDec.html#DfpDec(org.apache.commons.math3.dfp.DfpField, java.lang.String)">DfpDec(DfpField, String)</a></span> - Constructor for class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpDec.html" title="class in org.apache.commons.math3.dfp">DfpDec</a></dt>
<dd>
<div class="block">Create an instance from a String representation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpDec.html#DfpDec(org.apache.commons.math3.dfp.DfpField, byte, byte)">DfpDec(DfpField, byte, byte)</a></span> - Constructor for class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpDec.html" title="class in org.apache.commons.math3.dfp">DfpDec</a></dt>
<dd>
<div class="block">Creates an instance with a non-finite value.</div>
</dd>
<dt><a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp"><span class="strong">DfpField</span></a> - Class in <a href="./org/apache/commons/math3/dfp/package-summary.html">org.apache.commons.math3.dfp</a></dt>
<dd>
<div class="block">Field for Decimal floating point instances.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#DfpField(int)">DfpField(int)</a></span> - Constructor for class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Create a factory for the specified number of radix digits.</div>
</dd>
<dt><a href="./org/apache/commons/math3/dfp/DfpField.RoundingMode.html" title="enum in org.apache.commons.math3.dfp"><span class="strong">DfpField.RoundingMode</span></a> - Enum in <a href="./org/apache/commons/math3/dfp/package-summary.html">org.apache.commons.math3.dfp</a></dt>
<dd>
<div class="block">Enumerate for rounding modes.</div>
</dd>
<dt><a href="./org/apache/commons/math3/dfp/DfpMath.html" title="class in org.apache.commons.math3.dfp"><span class="strong">DfpMath</span></a> - Class in <a href="./org/apache/commons/math3/dfp/package-summary.html">org.apache.commons.math3.dfp</a></dt>
<dd>
<div class="block">Mathematical routines for use with <a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp"><code>Dfp</code></a>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/transform/DftNormalization.html" title="enum in org.apache.commons.math3.transform"><span class="strong">DftNormalization</span></a> - Enum in <a href="./org/apache/commons/math3/transform/package-summary.html">org.apache.commons.math3.transform</a></dt>
<dd>
<div class="block">This enumeration defines the various types of normalizations that can be
 applied to discrete Fourier transforms (DFT).</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/DiagonalMatrix.html" title="class in org.apache.commons.math3.linear"><span class="strong">DiagonalMatrix</span></a> - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Implementation of a diagonal matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DiagonalMatrix.html#DiagonalMatrix(int)">DiagonalMatrix(int)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DiagonalMatrix.html" title="class in org.apache.commons.math3.linear">DiagonalMatrix</a></dt>
<dd>
<div class="block">Creates a matrix with the supplied dimension.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DiagonalMatrix.html#DiagonalMatrix(double[])">DiagonalMatrix(double[])</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DiagonalMatrix.html" title="class in org.apache.commons.math3.linear">DiagonalMatrix</a></dt>
<dd>
<div class="block">Creates a matrix using the input array as the underlying data.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DiagonalMatrix.html#DiagonalMatrix(double[], boolean)">DiagonalMatrix(double[], boolean)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DiagonalMatrix.html" title="class in org.apache.commons.math3.linear">DiagonalMatrix</a></dt>
<dd>
<div class="block">Creates a matrix using the input array as the underlying data.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/RegionFactory.html#difference(org.apache.commons.math3.geometry.partitioning.Region, org.apache.commons.math3.geometry.partitioning.Region)">difference(Region&lt;S&gt;, Region&lt;S&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/RegionFactory.html" title="class in org.apache.commons.math3.geometry.partitioning">RegionFactory</a></dt>
<dd>
<div class="block">Compute the difference of two regions.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/DifferentiableMultivariateFunction.html" title="interface in org.apache.commons.math3.analysis"><span class="strong">DifferentiableMultivariateFunction</span></a> - Interface in <a href="./org/apache/commons/math3/analysis/package-summary.html">org.apache.commons.math3.analysis</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1 replaced by <a href="./org/apache/commons/math3/analysis/differentiation/MultivariateDifferentiableFunction.html" title="interface in org.apache.commons.math3.analysis.differentiation"><code>MultivariateDifferentiableFunction</code></a></i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/DifferentiableMultivariateMultiStartOptimizer.html" title="class in org.apache.commons.math3.optimization"><span class="strong">DifferentiableMultivariateMultiStartOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optimization/package-summary.html">org.apache.commons.math3.optimization</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/DifferentiableMultivariateMultiStartOptimizer.html#DifferentiableMultivariateMultiStartOptimizer(org.apache.commons.math3.optimization.DifferentiableMultivariateOptimizer, int, org.apache.commons.math3.random.RandomVectorGenerator)">DifferentiableMultivariateMultiStartOptimizer(DifferentiableMultivariateOptimizer, int, RandomVectorGenerator)</a></span> - Constructor for class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/DifferentiableMultivariateMultiStartOptimizer.html" title="class in org.apache.commons.math3.optimization">DifferentiableMultivariateMultiStartOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Create a multi-start optimizer from a single-start optimizer.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/DifferentiableMultivariateOptimizer.html" title="interface in org.apache.commons.math3.optimization"><span class="strong">DifferentiableMultivariateOptimizer</span></a> - Interface in <a href="./org/apache/commons/math3/optimization/package-summary.html">org.apache.commons.math3.optimization</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/DifferentiableMultivariateVectorFunction.html" title="interface in org.apache.commons.math3.analysis"><span class="strong">DifferentiableMultivariateVectorFunction</span></a> - Interface in <a href="./org/apache/commons/math3/analysis/package-summary.html">org.apache.commons.math3.analysis</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1 replaced by <a href="./org/apache/commons/math3/analysis/differentiation/MultivariateDifferentiableVectorFunction.html" title="interface in org.apache.commons.math3.analysis.differentiation"><code>MultivariateDifferentiableVectorFunction</code></a></i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/DifferentiableMultivariateVectorMultiStartOptimizer.html" title="class in org.apache.commons.math3.optimization"><span class="strong">DifferentiableMultivariateVectorMultiStartOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optimization/package-summary.html">org.apache.commons.math3.optimization</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/DifferentiableMultivariateVectorMultiStartOptimizer.html#DifferentiableMultivariateVectorMultiStartOptimizer(org.apache.commons.math3.optimization.DifferentiableMultivariateVectorOptimizer, int, org.apache.commons.math3.random.RandomVectorGenerator)">DifferentiableMultivariateVectorMultiStartOptimizer(DifferentiableMultivariateVectorOptimizer, int, RandomVectorGenerator)</a></span> - Constructor for class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/DifferentiableMultivariateVectorMultiStartOptimizer.html" title="class in org.apache.commons.math3.optimization">DifferentiableMultivariateVectorMultiStartOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Create a multi-start optimizer from a single-start optimizer.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/DifferentiableMultivariateVectorOptimizer.html" title="interface in org.apache.commons.math3.optimization"><span class="strong">DifferentiableMultivariateVectorOptimizer</span></a> - Interface in <a href="./org/apache/commons/math3/optimization/package-summary.html">org.apache.commons.math3.optimization</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/DifferentiableUnivariateFunction.html" title="interface in org.apache.commons.math3.analysis"><span class="strong">DifferentiableUnivariateFunction</span></a> - Interface in <a href="./org/apache/commons/math3/analysis/package-summary.html">org.apache.commons.math3.analysis</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1 replaced by <a href="./org/apache/commons/math3/analysis/differentiation/UnivariateDifferentiableFunction.html" title="interface in org.apache.commons.math3.analysis.differentiation"><code>UnivariateDifferentiableFunction</code></a></i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/DifferentiableUnivariateMatrixFunction.html" title="interface in org.apache.commons.math3.analysis"><span class="strong">DifferentiableUnivariateMatrixFunction</span></a> - Interface in <a href="./org/apache/commons/math3/analysis/package-summary.html">org.apache.commons.math3.analysis</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1 replaced by  <a href="./org/apache/commons/math3/analysis/differentiation/UnivariateDifferentiableMatrixFunction.html" title="interface in org.apache.commons.math3.analysis.differentiation"><code>UnivariateDifferentiableMatrixFunction</code></a></i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/solvers/DifferentiableUnivariateSolver.html" title="interface in org.apache.commons.math3.analysis.solvers"><span class="strong">DifferentiableUnivariateSolver</span></a> - Interface in <a href="./org/apache/commons/math3/analysis/solvers/package-summary.html">org.apache.commons.math3.analysis.solvers</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/analysis/solvers/UnivariateDifferentiableSolver.html" title="interface in org.apache.commons.math3.analysis.solvers"><code>UnivariateDifferentiableSolver</code></a></i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/DifferentiableUnivariateVectorFunction.html" title="interface in org.apache.commons.math3.analysis"><span class="strong">DifferentiableUnivariateVectorFunction</span></a> - Interface in <a href="./org/apache/commons/math3/analysis/package-summary.html">org.apache.commons.math3.analysis</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1 replaced by <a href="./org/apache/commons/math3/analysis/differentiation/UnivariateDifferentiableVectorFunction.html" title="interface in org.apache.commons.math3.analysis.differentiation"><code>UnivariateDifferentiableVectorFunction</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/FiniteDifferencesDifferentiator.html#differentiate(org.apache.commons.math3.analysis.UnivariateFunction)">differentiate(UnivariateFunction)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/FiniteDifferencesDifferentiator.html" title="class in org.apache.commons.math3.analysis.differentiation">FiniteDifferencesDifferentiator</a></dt>
<dd>
<div class="block">Create an implementation of a <a href="./org/apache/commons/math3/analysis/differentiation/UnivariateDifferentiableFunction.html" title="interface in org.apache.commons.math3.analysis.differentiation"><code>differential</code></a> from a regular <a href="./org/apache/commons/math3/analysis/UnivariateFunction.html" title="interface in org.apache.commons.math3.analysis"><code>function</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/FiniteDifferencesDifferentiator.html#differentiate(org.apache.commons.math3.analysis.UnivariateVectorFunction)">differentiate(UnivariateVectorFunction)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/FiniteDifferencesDifferentiator.html" title="class in org.apache.commons.math3.analysis.differentiation">FiniteDifferencesDifferentiator</a></dt>
<dd>
<div class="block">Create an implementation of a <a href="./org/apache/commons/math3/analysis/differentiation/UnivariateDifferentiableVectorFunction.html" title="interface in org.apache.commons.math3.analysis.differentiation"><code>differential</code></a> from a regular <a href="./org/apache/commons/math3/analysis/UnivariateVectorFunction.html" title="interface in org.apache.commons.math3.analysis"><code>vector function</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/FiniteDifferencesDifferentiator.html#differentiate(org.apache.commons.math3.analysis.UnivariateMatrixFunction)">differentiate(UnivariateMatrixFunction)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/FiniteDifferencesDifferentiator.html" title="class in org.apache.commons.math3.analysis.differentiation">FiniteDifferencesDifferentiator</a></dt>
<dd>
<div class="block">Create an implementation of a <a href="./org/apache/commons/math3/analysis/differentiation/UnivariateDifferentiableMatrixFunction.html" title="interface in org.apache.commons.math3.analysis.differentiation"><code>differential</code></a> from a regular <a href="./org/apache/commons/math3/analysis/UnivariateMatrixFunction.html" title="interface in org.apache.commons.math3.analysis"><code>matrix function</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/UnivariateFunctionDifferentiator.html#differentiate(org.apache.commons.math3.analysis.UnivariateFunction)">differentiate(UnivariateFunction)</a></span> - Method in interface org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/UnivariateFunctionDifferentiator.html" title="interface in org.apache.commons.math3.analysis.differentiation">UnivariateFunctionDifferentiator</a></dt>
<dd>
<div class="block">Create an implementation of a <a href="./org/apache/commons/math3/analysis/differentiation/UnivariateDifferentiableFunction.html" title="interface in org.apache.commons.math3.analysis.differentiation"><code>differential</code></a> from a regular <a href="./org/apache/commons/math3/analysis/UnivariateFunction.html" title="interface in org.apache.commons.math3.analysis"><code>function</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/UnivariateMatrixFunctionDifferentiator.html#differentiate(org.apache.commons.math3.analysis.UnivariateMatrixFunction)">differentiate(UnivariateMatrixFunction)</a></span> - Method in interface org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/UnivariateMatrixFunctionDifferentiator.html" title="interface in org.apache.commons.math3.analysis.differentiation">UnivariateMatrixFunctionDifferentiator</a></dt>
<dd>
<div class="block">Create an implementation of a <a href="./org/apache/commons/math3/analysis/differentiation/UnivariateDifferentiableMatrixFunction.html" title="interface in org.apache.commons.math3.analysis.differentiation"><code>differential</code></a> from a regular <a href="./org/apache/commons/math3/analysis/UnivariateMatrixFunction.html" title="interface in org.apache.commons.math3.analysis"><code>matrix function</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/UnivariateVectorFunctionDifferentiator.html#differentiate(org.apache.commons.math3.analysis.UnivariateVectorFunction)">differentiate(UnivariateVectorFunction)</a></span> - Method in interface org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/UnivariateVectorFunctionDifferentiator.html" title="interface in org.apache.commons.math3.analysis.differentiation">UnivariateVectorFunctionDifferentiator</a></dt>
<dd>
<div class="block">Create an implementation of a <a href="./org/apache/commons/math3/analysis/differentiation/UnivariateDifferentiableVectorFunction.html" title="interface in org.apache.commons.math3.analysis.differentiation"><code>differential</code></a> from a regular <a href="./org/apache/commons/math3/analysis/UnivariateVectorFunction.html" title="interface in org.apache.commons.math3.analysis"><code>vector function</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.html#differentiate(double[])">differentiate(double[])</a></span> - Static method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunction</a></dt>
<dd>
<div class="block">Returns the coefficients of the derivative of the polynomial with the given coefficients.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/special/Gamma.html#digamma(double)">digamma(double)</a></span> - Static method in class org.apache.commons.math3.special.<a href="./org/apache/commons/math3/special/Gamma.html" title="class in org.apache.commons.math3.special">Gamma</a></dt>
<dd>
<div class="block">Computes the digamma function of x.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/ValueServer.html#DIGEST_MODE">DIGEST_MODE</a></span> - Static variable in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/ValueServer.html" title="class in org.apache.commons.math3.random">ValueServer</a></dt>
<dd>
<div class="block">Use empirical distribution.</div>
</dd>
<dt><a href="./org/apache/commons/math3/exception/DimensionMismatchException.html" title="class in org.apache.commons.math3.exception"><span class="strong">DimensionMismatchException</span></a> - Exception in <a href="./org/apache/commons/math3/exception/package-summary.html">org.apache.commons.math3.exception</a></dt>
<dd>
<div class="block">Exception to be thrown when two dimensions differ.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/DimensionMismatchException.html#DimensionMismatchException(org.apache.commons.math3.exception.util.Localizable, int, int)">DimensionMismatchException(Localizable, int, int)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/DimensionMismatchException.html" title="class in org.apache.commons.math3.exception">DimensionMismatchException</a></dt>
<dd>
<div class="block">Construct an exception from the mismatched dimensions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/DimensionMismatchException.html#DimensionMismatchException(int, int)">DimensionMismatchException(int, int)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/DimensionMismatchException.html" title="class in org.apache.commons.math3.exception">DimensionMismatchException</a></dt>
<dd>
<div class="block">Construct an exception from the mismatched dimensions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#discardFrontElements(int)">discardFrontElements(int)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block">Discards the <code>i</code> initial elements of the array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#discardMostRecentElements(int)">discardMostRecentElements(int)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block">Discards the <code>i</code> last elements of the array.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/twod/DiskGenerator.html" title="class in org.apache.commons.math3.geometry.euclidean.twod"><span class="strong">DiskGenerator</span></a> - Class in <a href="./org/apache/commons/math3/geometry/euclidean/twod/package-summary.html">org.apache.commons.math3.geometry.euclidean.twod</a></dt>
<dd>
<div class="block">Class generating an enclosing ball from its support points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/DiskGenerator.html#DiskGenerator()">DiskGenerator()</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/DiskGenerator.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">DiskGenerator</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#distance(org.apache.commons.math3.geometry.Vector)">distance(Vector&lt;Euclidean1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.3, replaced with <a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#distance(org.apache.commons.math3.geometry.Point)"><code>Vector1D.distance(Point)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#distance(org.apache.commons.math3.geometry.Point)">distance(Point&lt;Euclidean1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Compute the distance between the instance and another point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#distance(org.apache.commons.math3.geometry.euclidean.oned.Vector1D, org.apache.commons.math3.geometry.euclidean.oned.Vector1D)">distance(Vector1D, Vector1D)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Compute the distance between two vectors according to the L<sub>2</sub> norm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html#distance(org.apache.commons.math3.geometry.euclidean.threed.FieldRotation, org.apache.commons.math3.geometry.euclidean.threed.FieldRotation)">distance(FieldRotation&lt;T&gt;, FieldRotation&lt;T&gt;)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldRotation</a></dt>
<dd>
<div class="block">Compute the <i>distance</i> between two rotations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#distance(org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">distance(FieldVector3D&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Compute the distance between the instance and another vector according to the L<sub>2</sub> norm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#distance(org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">distance(Vector3D)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Compute the distance between the instance and another vector according to the L<sub>2</sub> norm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#distance(org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">distance(FieldVector3D&lt;T&gt;, FieldVector3D&lt;T&gt;)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Compute the distance between two vectors according to the L<sub>2</sub> norm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#distance(org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">distance(FieldVector3D&lt;T&gt;, Vector3D)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Compute the distance between two vectors according to the L<sub>2</sub> norm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#distance(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">distance(Vector3D, FieldVector3D&lt;T&gt;)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Compute the distance between two vectors according to the L<sub>2</sub> norm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html#distance(org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">distance(Vector3D)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Line</a></dt>
<dd>
<div class="block">Compute the distance between the instance and a point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html#distance(org.apache.commons.math3.geometry.euclidean.threed.Line)">distance(Line)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Line</a></dt>
<dd>
<div class="block">Compute the shortest distance between the instance and another line.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html#distance(org.apache.commons.math3.geometry.euclidean.threed.Rotation, org.apache.commons.math3.geometry.euclidean.threed.Rotation)">distance(Rotation, Rotation)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Rotation</a></dt>
<dd>
<div class="block">Compute the <i>distance</i> between two rotations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#distance(org.apache.commons.math3.geometry.Vector)">distance(Vector&lt;Euclidean3D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Compute the distance between the instance and another vector according to the L<sub>2</sub> norm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#distance(org.apache.commons.math3.geometry.Point)">distance(Point&lt;Euclidean3D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Compute the distance between the instance and another point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#distance(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">distance(Vector3D, Vector3D)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Compute the distance between two vectors according to the L<sub>2</sub> norm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#distance(org.apache.commons.math3.geometry.euclidean.twod.Vector2D)">distance(Vector2D)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Line</a></dt>
<dd>
<div class="block">Compute the distance between the instance and a point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Segment.html#distance(org.apache.commons.math3.geometry.euclidean.twod.Vector2D)">distance(Vector2D)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Segment.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Segment</a></dt>
<dd>
<div class="block">Calculates the shortest distance from a point to this line segment.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#distance(org.apache.commons.math3.geometry.Vector)">distance(Vector&lt;Euclidean2D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Compute the distance between the instance and another vector according to the L<sub>2</sub> norm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#distance(org.apache.commons.math3.geometry.Point)">distance(Point&lt;Euclidean2D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Compute the distance between the instance and another point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#distance(org.apache.commons.math3.geometry.euclidean.twod.Vector2D, org.apache.commons.math3.geometry.euclidean.twod.Vector2D)">distance(Vector2D, Vector2D)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Compute the distance between two vectors according to the L<sub>2</sub> norm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/Point.html#distance(org.apache.commons.math3.geometry.Point)">distance(Point&lt;S&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/Point.html" title="interface in org.apache.commons.math3.geometry">Point</a></dt>
<dd>
<div class="block">Compute the distance between the instance and another point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/S1Point.html#distance(org.apache.commons.math3.geometry.Point)">distance(Point&lt;Sphere1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/S1Point.html" title="class in org.apache.commons.math3.geometry.spherical.oned">S1Point</a></dt>
<dd>
<div class="block">Compute the distance between the instance and another point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/S1Point.html#distance(org.apache.commons.math3.geometry.spherical.oned.S1Point, org.apache.commons.math3.geometry.spherical.oned.S1Point)">distance(S1Point, S1Point)</a></span> - Static method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/S1Point.html" title="class in org.apache.commons.math3.geometry.spherical.oned">S1Point</a></dt>
<dd>
<div class="block">Compute the distance (angular separation) between two points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html#distance(org.apache.commons.math3.geometry.Point)">distance(Point&lt;Sphere2D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html" title="class in org.apache.commons.math3.geometry.spherical.twod">S2Point</a></dt>
<dd>
<div class="block">Compute the distance between the instance and another point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html#distance(org.apache.commons.math3.geometry.spherical.twod.S2Point, org.apache.commons.math3.geometry.spherical.twod.S2Point)">distance(S2Point, S2Point)</a></span> - Static method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html" title="class in org.apache.commons.math3.geometry.spherical.twod">S2Point</a></dt>
<dd>
<div class="block">Compute the distance (angular separation) between two points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/Vector.html#distance(org.apache.commons.math3.geometry.Vector)">distance(Vector&lt;S&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/Vector.html" title="interface in org.apache.commons.math3.geometry">Vector</a></dt>
<dd>
<div class="block">Compute the distance between the instance and another vector according to the L<sub>2</sub> norm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/Clusterer.html#distance(org.apache.commons.math3.ml.clustering.Clusterable, org.apache.commons.math3.ml.clustering.Clusterable)">distance(Clusterable, Clusterable)</a></span> - Method in class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/Clusterer.html" title="class in org.apache.commons.math3.ml.clustering">Clusterer</a></dt>
<dd>
<div class="block">Calculates the distance between two <a href="./org/apache/commons/math3/ml/clustering/Clusterable.html" title="interface in org.apache.commons.math3.ml.clustering"><code>Clusterable</code></a> instances
 with the configured <a href="./org/apache/commons/math3/ml/distance/DistanceMeasure.html" title="interface in org.apache.commons.math3.ml.distance"><code>DistanceMeasure</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/evaluation/ClusterEvaluator.html#distance(org.apache.commons.math3.ml.clustering.Clusterable, org.apache.commons.math3.ml.clustering.Clusterable)">distance(Clusterable, Clusterable)</a></span> - Method in class org.apache.commons.math3.ml.clustering.evaluation.<a href="./org/apache/commons/math3/ml/clustering/evaluation/ClusterEvaluator.html" title="class in org.apache.commons.math3.ml.clustering.evaluation">ClusterEvaluator</a></dt>
<dd>
<div class="block">Calculates the distance between two <a href="./org/apache/commons/math3/ml/clustering/Clusterable.html" title="interface in org.apache.commons.math3.ml.clustering"><code>Clusterable</code></a> instances
 with the configured <a href="./org/apache/commons/math3/ml/distance/DistanceMeasure.html" title="interface in org.apache.commons.math3.ml.distance"><code>DistanceMeasure</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#distance(double[], double[])">distance(double[], double[])</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Calculates the L<sub>2</sub> (Euclidean) distance between two points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#distance(int[], int[])">distance(int[], int[])</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Calculates the L<sub>2</sub> (Euclidean) distance between two points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#distance1(org.apache.commons.math3.geometry.Vector)">distance1(Vector&lt;Euclidean1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Compute the distance between the instance and another vector according to the L<sub>1</sub> norm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#distance1(org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">distance1(FieldVector3D&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Compute the distance between the instance and another vector according to the L<sub>1</sub> norm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#distance1(org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">distance1(Vector3D)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Compute the distance between the instance and another vector according to the L<sub>1</sub> norm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#distance1(org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">distance1(FieldVector3D&lt;T&gt;, FieldVector3D&lt;T&gt;)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Compute the distance between two vectors according to the L<sub>1</sub> norm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#distance1(org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">distance1(FieldVector3D&lt;T&gt;, Vector3D)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Compute the distance between two vectors according to the L<sub>1</sub> norm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#distance1(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">distance1(Vector3D, FieldVector3D&lt;T&gt;)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Compute the distance between two vectors according to the L<sub>1</sub> norm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#distance1(org.apache.commons.math3.geometry.Vector)">distance1(Vector&lt;Euclidean3D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Compute the distance between the instance and another vector according to the L<sub>1</sub> norm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#distance1(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">distance1(Vector3D, Vector3D)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Compute the distance between two vectors according to the L<sub>1</sub> norm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#distance1(org.apache.commons.math3.geometry.Vector)">distance1(Vector&lt;Euclidean2D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Compute the distance between the instance and another vector according to the L<sub>1</sub> norm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/Vector.html#distance1(org.apache.commons.math3.geometry.Vector)">distance1(Vector&lt;S&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/Vector.html" title="interface in org.apache.commons.math3.geometry">Vector</a></dt>
<dd>
<div class="block">Compute the distance between the instance and another vector according to the L<sub>1</sub> norm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#distance1(double[], double[])">distance1(double[], double[])</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Calculates the L<sub>1</sub> (sum of abs) distance between two points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#distance1(int[], int[])">distance1(int[], int[])</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Calculates the L<sub>1</sub> (sum of abs) distance between two points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/clustering/Clusterable.html#distanceFrom(T)">distanceFrom(T)</a></span> - Method in interface org.apache.commons.math3.stat.clustering.<a href="./org/apache/commons/math3/stat/clustering/Clusterable.html" title="interface in org.apache.commons.math3.stat.clustering">Clusterable</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Returns the distance from the given point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/clustering/EuclideanDoublePoint.html#distanceFrom(org.apache.commons.math3.stat.clustering.EuclideanDoublePoint)">distanceFrom(EuclideanDoublePoint)</a></span> - Method in class org.apache.commons.math3.stat.clustering.<a href="./org/apache/commons/math3/stat/clustering/EuclideanDoublePoint.html" title="class in org.apache.commons.math3.stat.clustering">EuclideanDoublePoint</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Returns the distance from the given point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/clustering/EuclideanIntegerPoint.html#distanceFrom(org.apache.commons.math3.stat.clustering.EuclideanIntegerPoint)">distanceFrom(EuclideanIntegerPoint)</a></span> - Method in class org.apache.commons.math3.stat.clustering.<a href="./org/apache/commons/math3/stat/clustering/EuclideanIntegerPoint.html" title="class in org.apache.commons.math3.stat.clustering">EuclideanIntegerPoint</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Returns the distance from the given point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#distanceInf(org.apache.commons.math3.geometry.Vector)">distanceInf(Vector&lt;Euclidean1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Compute the distance between the instance and another vector according to the L<sub>&infin;</sub> norm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#distanceInf(org.apache.commons.math3.geometry.euclidean.oned.Vector1D, org.apache.commons.math3.geometry.euclidean.oned.Vector1D)">distanceInf(Vector1D, Vector1D)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Compute the distance between two vectors according to the L<sub>&infin;</sub> norm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#distanceInf(org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">distanceInf(FieldVector3D&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Compute the distance between the instance and another vector according to the L<sub>&infin;</sub> norm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#distanceInf(org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">distanceInf(Vector3D)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Compute the distance between the instance and another vector according to the L<sub>&infin;</sub> norm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#distanceInf(org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">distanceInf(FieldVector3D&lt;T&gt;, FieldVector3D&lt;T&gt;)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Compute the distance between two vectors according to the L<sub>&infin;</sub> norm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#distanceInf(org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">distanceInf(FieldVector3D&lt;T&gt;, Vector3D)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Compute the distance between two vectors according to the L<sub>&infin;</sub> norm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#distanceInf(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">distanceInf(Vector3D, FieldVector3D&lt;T&gt;)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Compute the distance between two vectors according to the L<sub>&infin;</sub> norm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#distanceInf(org.apache.commons.math3.geometry.Vector)">distanceInf(Vector&lt;Euclidean3D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Compute the distance between the instance and another vector according to the L<sub>&infin;</sub> norm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#distanceInf(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">distanceInf(Vector3D, Vector3D)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Compute the distance between two vectors according to the L<sub>&infin;</sub> norm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#distanceInf(org.apache.commons.math3.geometry.Vector)">distanceInf(Vector&lt;Euclidean2D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Compute the distance between the instance and another vector according to the L<sub>&infin;</sub> norm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#distanceInf(org.apache.commons.math3.geometry.euclidean.twod.Vector2D, org.apache.commons.math3.geometry.euclidean.twod.Vector2D)">distanceInf(Vector2D, Vector2D)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Compute the distance between two vectors according to the L<sub>&infin;</sub> norm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/Vector.html#distanceInf(org.apache.commons.math3.geometry.Vector)">distanceInf(Vector&lt;S&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/Vector.html" title="interface in org.apache.commons.math3.geometry">Vector</a></dt>
<dd>
<div class="block">Compute the distance between the instance and another vector according to the L<sub>&infin;</sub> norm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#distanceInf(double[], double[])">distanceInf(double[], double[])</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Calculates the L<sub>&infin;</sub> (max of abs) distance between two points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#distanceInf(int[], int[])">distanceInf(int[], int[])</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Calculates the L<sub>&infin;</sub> (max of abs) distance between two points.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/distance/DistanceMeasure.html" title="interface in org.apache.commons.math3.ml.distance"><span class="strong">DistanceMeasure</span></a> - Interface in <a href="./org/apache/commons/math3/ml/distance/package-summary.html">org.apache.commons.math3.ml.distance</a></dt>
<dd>
<div class="block">Interface for distance measures of n-dimensional vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#distanceSq(org.apache.commons.math3.geometry.Vector)">distanceSq(Vector&lt;Euclidean1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Compute the square of the distance between the instance and another vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#distanceSq(org.apache.commons.math3.geometry.euclidean.oned.Vector1D, org.apache.commons.math3.geometry.euclidean.oned.Vector1D)">distanceSq(Vector1D, Vector1D)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Compute the square of the distance between two vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#distanceSq(org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">distanceSq(FieldVector3D&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Compute the square of the distance between the instance and another vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#distanceSq(org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">distanceSq(Vector3D)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Compute the square of the distance between the instance and another vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#distanceSq(org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">distanceSq(FieldVector3D&lt;T&gt;, FieldVector3D&lt;T&gt;)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Compute the square of the distance between two vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#distanceSq(org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">distanceSq(FieldVector3D&lt;T&gt;, Vector3D)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Compute the square of the distance between two vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#distanceSq(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">distanceSq(Vector3D, FieldVector3D&lt;T&gt;)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Compute the square of the distance between two vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#distanceSq(org.apache.commons.math3.geometry.Vector)">distanceSq(Vector&lt;Euclidean3D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Compute the square of the distance between the instance and another vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#distanceSq(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">distanceSq(Vector3D, Vector3D)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Compute the square of the distance between two vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#distanceSq(org.apache.commons.math3.geometry.Vector)">distanceSq(Vector&lt;Euclidean2D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Compute the square of the distance between the instance and another vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#distanceSq(org.apache.commons.math3.geometry.euclidean.twod.Vector2D, org.apache.commons.math3.geometry.euclidean.twod.Vector2D)">distanceSq(Vector2D, Vector2D)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Compute the square of the distance between two vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/Vector.html#distanceSq(org.apache.commons.math3.geometry.Vector)">distanceSq(Vector&lt;S&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/Vector.html" title="interface in org.apache.commons.math3.geometry">Vector</a></dt>
<dd>
<div class="block">Compute the square of the distance between the instance and another vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#divide(double)">divide(double)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">'&divide;' operator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#divide(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">divide(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Compute this &divide; a.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#divide(double[], int, double[], int, double[], int)">divide(double[], int, double[], int, double[], int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Perform division of two derivative structures.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#divide(org.apache.commons.math3.analysis.differentiation.SparseGradient)">divide(SparseGradient)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Compute this &divide; a.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#divide(double)">divide(double)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">'&divide;' operator.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Divide.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Divide</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Divide the first operand by the second.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Divide.html#Divide()">Divide()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Divide.html" title="class in org.apache.commons.math3.analysis.function">Divide</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#divide(org.apache.commons.math3.complex.Complex)">divide(Complex)</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Returns a <code>Complex</code> whose value is
 <code>(this / divisor)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#divide(double)">divide(double)</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Returns a <code>Complex</code> whose value is <code>(this / divisor)</code>,
 with <code>divisor</code> interpreted as a real number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#divide(org.apache.commons.math3.dfp.Dfp)">divide(Dfp)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Divide this by divisor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#divide(int)">divide(int)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Divide by a single digit less than radix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#divide(double)">divide(double)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">'&divide;' operator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/FieldElement.html#divide(T)">divide(T)</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/FieldElement.html" title="interface in org.apache.commons.math3">FieldElement</a></dt>
<dd>
<div class="block">Compute this &divide; a.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#divide(java.math.BigInteger)">divide(BigInteger)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Divide the value of this fraction by the passed <code>BigInteger</code>,
 ie <code>this * 1 / bg</code>, returning the result in reduced form.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#divide(int)">divide(int)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Divide the value of this fraction by the passed <code>int</code>, ie
 <code>this * 1 / i</code>, returning the result in reduced form.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#divide(long)">divide(long)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Divide the value of this fraction by the passed <code>long</code>, ie
 <code>this * 1 / l</code>, returning the result in reduced form.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#divide(org.apache.commons.math3.fraction.BigFraction)">divide(BigFraction)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Divide the value of this fraction by another, returning the result in
 reduced form.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#divide(org.apache.commons.math3.fraction.Fraction)">divide(Fraction)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">Divide the value of this fraction by another.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#divide(int)">divide(int)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">Divide the fraction by an integer.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#divide(double)">divide(double)</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">'&divide;' operator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#divide(org.apache.commons.math3.util.BigReal)">divide(BigReal)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dd>
<div class="block">Compute this &divide; a.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#divide(org.apache.commons.math3.util.Decimal64)">divide(Decimal64)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Compute this &divide; a.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#divide(double)">divide(double)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">'&divide;' operator.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/interpolation/DividedDifferenceInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation"><span class="strong">DividedDifferenceInterpolator</span></a> - Class in <a href="./org/apache/commons/math3/analysis/interpolation/package-summary.html">org.apache.commons.math3.analysis.interpolation</a></dt>
<dd>
<div class="block">Implements the <a href="./org/apache/commons/math3/analysis/interpolation/
 http://mathworld.wolfram.com/NewtonsDividedDifferenceInterpolationFormula.html">
 Divided Difference Algorithm</a> for interpolation of real univariate
 functions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/DividedDifferenceInterpolator.html#DividedDifferenceInterpolator()">DividedDifferenceInterpolator()</a></span> - Constructor for class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/DividedDifferenceInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">DividedDifferenceInterpolator</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#doCopy()">doCopy()</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">Really copy the finalized instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/NordsieckStepInterpolator.html#doCopy()">doCopy()</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/NordsieckStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">NordsieckStepInterpolator</a></dt>
<dd>
<div class="block">Really copy the finalized instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#doFinalize()">doFinalize()</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">Really finalize the step.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html#doIntegrate()">doIntegrate()</a></span> - Method in class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">BaseAbstractUnivariateIntegrator</a></dt>
<dd>
<div class="block">Method for implementing actual integration algorithms in derived
 classes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/IterativeLegendreGaussIntegrator.html#doIntegrate()">doIntegrate()</a></span> - Method in class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/IterativeLegendreGaussIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">IterativeLegendreGaussIntegrator</a></dt>
<dd>
<div class="block">Method for implementing actual integration algorithms in derived
 classes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/LegendreGaussIntegrator.html#doIntegrate()">doIntegrate()</a></span> - Method in class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/LegendreGaussIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">LegendreGaussIntegrator</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Method for implementing actual integration algorithms in derived
 classes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/MidPointIntegrator.html#doIntegrate()">doIntegrate()</a></span> - Method in class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/MidPointIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">MidPointIntegrator</a></dt>
<dd>
<div class="block">Method for implementing actual integration algorithms in derived
 classes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/RombergIntegrator.html#doIntegrate()">doIntegrate()</a></span> - Method in class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/RombergIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">RombergIntegrator</a></dt>
<dd>
<div class="block">Method for implementing actual integration algorithms in derived
 classes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/SimpsonIntegrator.html#doIntegrate()">doIntegrate()</a></span> - Method in class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/SimpsonIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">SimpsonIntegrator</a></dt>
<dd>
<div class="block">Method for implementing actual integration algorithms in derived
 classes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/TrapezoidIntegrator.html#doIntegrate()">doIntegrate()</a></span> - Method in class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/TrapezoidIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">TrapezoidIntegrator</a></dt>
<dd>
<div class="block">Method for implementing actual integration algorithms in derived
 classes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/SimplexSolver.html#doIteration(org.apache.commons.math3.optim.linear.SimplexTableau)">doIteration(SimplexTableau)</a></span> - Method in class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/SimplexSolver.html" title="class in org.apache.commons.math3.optim.linear">SimplexSolver</a></dt>
<dd>
<div class="block">Runs one iteration of the Simplex method on the given model.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/SimplexSolver.html#doIteration(org.apache.commons.math3.optimization.linear.SimplexTableau)">doIteration(SimplexTableau)</a></span> - Method in class org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/SimplexSolver.html" title="class in org.apache.commons.math3.optimization.linear">SimplexSolver</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Runs one iteration of the Simplex method on the given model.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/BaseMultiStartMultivariateOptimizer.html#doOptimize()">doOptimize()</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/BaseMultiStartMultivariateOptimizer.html" title="class in org.apache.commons.math3.optim">BaseMultiStartMultivariateOptimizer</a></dt>
<dd>
<div class="block">Performs the bulk of the optimization algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/BaseOptimizer.html#doOptimize()">doOptimize()</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/BaseOptimizer.html" title="class in org.apache.commons.math3.optim">BaseOptimizer</a></dt>
<dd>
<div class="block">Performs the bulk of the optimization algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/SimplexSolver.html#doOptimize()">doOptimize()</a></span> - Method in class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/SimplexSolver.html" title="class in org.apache.commons.math3.optim.linear">SimplexSolver</a></dt>
<dd>
<div class="block">Performs the bulk of the optimization algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.html#doOptimize()">doOptimize()</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.gradient.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.gradient">NonLinearConjugateGradientOptimizer</a></dt>
<dd>
<div class="block">Performs the bulk of the optimization algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/BOBYQAOptimizer.html#doOptimize()">doOptimize()</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/BOBYQAOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">BOBYQAOptimizer</a></dt>
<dd>
<div class="block">Performs the bulk of the optimization algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/CMAESOptimizer.html#doOptimize()">doOptimize()</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/CMAESOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">CMAESOptimizer</a></dt>
<dd>
<div class="block">Performs the bulk of the optimization algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/PowellOptimizer.html#doOptimize()">doOptimize()</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/PowellOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">PowellOptimizer</a></dt>
<dd>
<div class="block">Performs the bulk of the optimization algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/SimplexOptimizer.html#doOptimize()">doOptimize()</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/SimplexOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">SimplexOptimizer</a></dt>
<dd>
<div class="block">Performs the bulk of the optimization algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/GaussNewtonOptimizer.html#doOptimize()">doOptimize()</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.vector.jacobian.<a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/GaussNewtonOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector.jacobian">GaussNewtonOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Performs the bulk of the optimization algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/LevenbergMarquardtOptimizer.html#doOptimize()">doOptimize()</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.vector.jacobian.<a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/LevenbergMarquardtOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector.jacobian">LevenbergMarquardtOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Performs the bulk of the optimization algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/BrentOptimizer.html#doOptimize()">doOptimize()</a></span> - Method in class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/BrentOptimizer.html" title="class in org.apache.commons.math3.optim.univariate">BrentOptimizer</a></dt>
<dd>
<div class="block">Performs the bulk of the optimization algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/MultiStartUnivariateOptimizer.html#doOptimize()">doOptimize()</a></span> - Method in class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/MultiStartUnivariateOptimizer.html" title="class in org.apache.commons.math3.optim.univariate">MultiStartUnivariateOptimizer</a></dt>
<dd>
<div class="block">Performs the bulk of the optimization algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html#doOptimize()">doOptimize()</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Perform the bulk of the optimization algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html#doOptimize()">doOptimize()</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateVectorOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Perform the bulk of the optimization algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BOBYQAOptimizer.html#doOptimize()">doOptimize()</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BOBYQAOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BOBYQAOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Perform the bulk of the optimization algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html#doOptimize()">doOptimize()</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">CMAESOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Perform the bulk of the optimization algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/PowellOptimizer.html#doOptimize()">doOptimize()</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/PowellOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">PowellOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Perform the bulk of the optimization algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/SimplexOptimizer.html#doOptimize()">doOptimize()</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/SimplexOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">SimplexOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Perform the bulk of the optimization algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/GaussNewtonOptimizer.html#doOptimize()">doOptimize()</a></span> - Method in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/GaussNewtonOptimizer.html" title="class in org.apache.commons.math3.optimization.general">GaussNewtonOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Perform the bulk of the optimization algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/LevenbergMarquardtOptimizer.html#doOptimize()">doOptimize()</a></span> - Method in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/LevenbergMarquardtOptimizer.html" title="class in org.apache.commons.math3.optimization.general">LevenbergMarquardtOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Perform the bulk of the optimization algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/NonLinearConjugateGradientOptimizer.html#doOptimize()">doOptimize()</a></span> - Method in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/NonLinearConjugateGradientOptimizer.html" title="class in org.apache.commons.math3.optimization.general">NonLinearConjugateGradientOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Perform the bulk of the optimization algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/AbstractLinearOptimizer.html#doOptimize()">doOptimize()</a></span> - Method in class org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/AbstractLinearOptimizer.html" title="class in org.apache.commons.math3.optimization.linear">AbstractLinearOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Perform the bulk of optimization algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/SimplexSolver.html#doOptimize()">doOptimize()</a></span> - Method in class org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/SimplexSolver.html" title="class in org.apache.commons.math3.optimization.linear">SimplexSolver</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Perform the bulk of optimization algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/BaseAbstractUnivariateOptimizer.html#doOptimize()">doOptimize()</a></span> - Method in class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/BaseAbstractUnivariateOptimizer.html" title="class in org.apache.commons.math3.optimization.univariate">BaseAbstractUnivariateOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Method for implementing actual optimization algorithms in derived
 classes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/BrentOptimizer.html#doOptimize()">doOptimize()</a></span> - Method in class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/BrentOptimizer.html" title="class in org.apache.commons.math3.optimization.univariate">BrentOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Method for implementing actual optimization algorithms in derived
 classes.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/nonstiff/DormandPrince54Integrator.html" title="class in org.apache.commons.math3.ode.nonstiff"><span class="strong">DormandPrince54Integrator</span></a> - Class in <a href="./org/apache/commons/math3/ode/nonstiff/package-summary.html">org.apache.commons.math3.ode.nonstiff</a></dt>
<dd>
<div class="block">This class implements the 5(4) Dormand-Prince integrator for Ordinary
 Differential Equations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/DormandPrince54Integrator.html#DormandPrince54Integrator(double, double, double, double)">DormandPrince54Integrator(double, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/DormandPrince54Integrator.html" title="class in org.apache.commons.math3.ode.nonstiff">DormandPrince54Integrator</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/DormandPrince54Integrator.html#DormandPrince54Integrator(double, double, double[], double[])">DormandPrince54Integrator(double, double, double[], double[])</a></span> - Constructor for class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/DormandPrince54Integrator.html" title="class in org.apache.commons.math3.ode.nonstiff">DormandPrince54Integrator</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/nonstiff/DormandPrince853Integrator.html" title="class in org.apache.commons.math3.ode.nonstiff"><span class="strong">DormandPrince853Integrator</span></a> - Class in <a href="./org/apache/commons/math3/ode/nonstiff/package-summary.html">org.apache.commons.math3.ode.nonstiff</a></dt>
<dd>
<div class="block">This class implements the 8(5,3) Dormand-Prince integrator for Ordinary
 Differential Equations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/DormandPrince853Integrator.html#DormandPrince853Integrator(double, double, double, double)">DormandPrince853Integrator(double, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/DormandPrince853Integrator.html" title="class in org.apache.commons.math3.ode.nonstiff">DormandPrince853Integrator</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/DormandPrince853Integrator.html#DormandPrince853Integrator(double, double, double[], double[])">DormandPrince853Integrator(double, double, double[], double[])</a></span> - Constructor for class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/DormandPrince853Integrator.html" title="class in org.apache.commons.math3.ode.nonstiff">DormandPrince853Integrator</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html#doSolve()">doSolve()</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BaseAbstractUnivariateSolver</a></dt>
<dd>
<div class="block">Method for implementing actual optimization algorithms in derived
 classes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseSecantSolver.html#doSolve()">doSolve()</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseSecantSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BaseSecantSolver</a></dt>
<dd>
<div class="block">Method for implementing actual optimization algorithms in derived
 classes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BisectionSolver.html#doSolve()">doSolve()</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BisectionSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BisectionSolver</a></dt>
<dd>
<div class="block">Method for implementing actual optimization algorithms in derived
 classes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BracketingNthOrderBrentSolver.html#doSolve()">doSolve()</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BracketingNthOrderBrentSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BracketingNthOrderBrentSolver</a></dt>
<dd>
<div class="block">Method for implementing actual optimization algorithms in derived
 classes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BrentSolver.html#doSolve()">doSolve()</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BrentSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BrentSolver</a></dt>
<dd>
<div class="block">Method for implementing actual optimization algorithms in derived
 classes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/LaguerreSolver.html#doSolve()">doSolve()</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/LaguerreSolver.html" title="class in org.apache.commons.math3.analysis.solvers">LaguerreSolver</a></dt>
<dd>
<div class="block">Method for implementing actual optimization algorithms in derived
 classes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/MullerSolver.html#doSolve()">doSolve()</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/MullerSolver.html" title="class in org.apache.commons.math3.analysis.solvers">MullerSolver</a></dt>
<dd>
<div class="block">Method for implementing actual optimization algorithms in derived
 classes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/MullerSolver2.html#doSolve()">doSolve()</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/MullerSolver2.html" title="class in org.apache.commons.math3.analysis.solvers">MullerSolver2</a></dt>
<dd>
<div class="block">Method for implementing actual optimization algorithms in derived
 classes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/NewtonRaphsonSolver.html#doSolve()">doSolve()</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/NewtonRaphsonSolver.html" title="class in org.apache.commons.math3.analysis.solvers">NewtonRaphsonSolver</a></dt>
<dd>
<div class="block">Method for implementing actual optimization algorithms in derived
 classes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/NewtonSolver.html#doSolve()">doSolve()</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/NewtonSolver.html" title="class in org.apache.commons.math3.analysis.solvers">NewtonSolver</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Method for implementing actual optimization algorithms in derived
 classes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/RiddersSolver.html#doSolve()">doSolve()</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/RiddersSolver.html" title="class in org.apache.commons.math3.analysis.solvers">RiddersSolver</a></dt>
<dd>
<div class="block">Method for implementing actual optimization algorithms in derived
 classes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/SecantSolver.html#doSolve()">doSolve()</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/SecantSolver.html" title="class in org.apache.commons.math3.analysis.solvers">SecantSolver</a></dt>
<dd>
<div class="block">Method for implementing actual optimization algorithms in derived
 classes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Quaternion.html#dotProduct(org.apache.commons.math3.complex.Quaternion, org.apache.commons.math3.complex.Quaternion)">dotProduct(Quaternion, Quaternion)</a></span> - Static method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex">Quaternion</a></dt>
<dd>
<div class="block">Computes the dot-product of two quaternions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Quaternion.html#dotProduct(org.apache.commons.math3.complex.Quaternion)">dotProduct(Quaternion)</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex">Quaternion</a></dt>
<dd>
<div class="block">Computes the dot-product of the instance by a quaternion.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#dotProduct(org.apache.commons.math3.geometry.Vector)">dotProduct(Vector&lt;Euclidean1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Compute the dot-product of the instance and another vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#dotProduct(org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">dotProduct(FieldVector3D&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Compute the dot-product of the instance and another vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#dotProduct(org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">dotProduct(Vector3D)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Compute the dot-product of the instance and another vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#dotProduct(org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">dotProduct(FieldVector3D&lt;T&gt;, FieldVector3D&lt;T&gt;)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Compute the dot-product of two vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#dotProduct(org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">dotProduct(FieldVector3D&lt;T&gt;, Vector3D)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Compute the dot-product of two vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#dotProduct(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">dotProduct(Vector3D, FieldVector3D&lt;T&gt;)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Compute the dot-product of two vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#dotProduct(org.apache.commons.math3.geometry.Vector)">dotProduct(Vector&lt;Euclidean3D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Compute the dot-product of the instance and another vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#dotProduct(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">dotProduct(Vector3D, Vector3D)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Compute the dot-product of two vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#dotProduct(org.apache.commons.math3.geometry.Vector)">dotProduct(Vector&lt;Euclidean2D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Compute the dot-product of the instance and another vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/Vector.html#dotProduct(org.apache.commons.math3.geometry.Vector)">dotProduct(Vector&lt;S&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/Vector.html" title="interface in org.apache.commons.math3.geometry">Vector</a></dt>
<dd>
<div class="block">Compute the dot-product of the instance and another vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#dotProduct(org.apache.commons.math3.linear.FieldVector)">dotProduct(FieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Compute the dot product.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#dotProduct(org.apache.commons.math3.linear.ArrayFieldVector)">dotProduct(ArrayFieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Compute the dot product.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#dotProduct(org.apache.commons.math3.linear.RealVector)">dotProduct(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Compute the dot product of this vector with <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVector.html#dotProduct(org.apache.commons.math3.linear.FieldVector)">dotProduct(FieldVector&lt;T&gt;)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVector.html" title="interface in org.apache.commons.math3.linear">FieldVector</a></dt>
<dd>
<div class="block">Compute the dot product.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#dotProduct(org.apache.commons.math3.linear.OpenMapRealVector)">dotProduct(OpenMapRealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1 (to be removed in 4.0). The computation is
 performed by the parent class. The method must be kept to maintain
 backwards compatibility.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#dotProduct(org.apache.commons.math3.linear.RealVector)">dotProduct(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Compute the dot product of this vector with <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#dotProduct(org.apache.commons.math3.linear.FieldVector)">dotProduct(FieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Compute the dot product.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#dotrap(int, java.lang.String, org.apache.commons.math3.dfp.Dfp, org.apache.commons.math3.dfp.Dfp)">dotrap(int, String, Dfp, Dfp)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Raises a trap.</div>
</dd>
<dt><a href="./org/apache/commons/math3/util/DoubleArray.html" title="interface in org.apache.commons.math3.util"><span class="strong">DoubleArray</span></a> - Interface in <a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a></dt>
<dd>
<div class="block">Provides a standard interface for double arrays.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/clustering/DoublePoint.html" title="class in org.apache.commons.math3.ml.clustering"><span class="strong">DoublePoint</span></a> - Class in <a href="./org/apache/commons/math3/ml/clustering/package-summary.html">org.apache.commons.math3.ml.clustering</a></dt>
<dd>
<div class="block">A simple implementation of <a href="./org/apache/commons/math3/ml/clustering/Clusterable.html" title="interface in org.apache.commons.math3.ml.clustering"><code>Clusterable</code></a> for points with double coordinates.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/DoublePoint.html#DoublePoint(double[])">DoublePoint(double[])</a></span> - Constructor for class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/DoublePoint.html" title="class in org.apache.commons.math3.ml.clustering">DoublePoint</a></dt>
<dd>
<div class="block">Build an instance wrapping an double array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/DoublePoint.html#DoublePoint(int[])">DoublePoint(int[])</a></span> - Constructor for class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/DoublePoint.html" title="class in org.apache.commons.math3.ml.clustering">DoublePoint</a></dt>
<dd>
<div class="block">Build an instance wrapping an integer array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#doubleValue()">doubleValue()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Gets the fraction as a <tt>double</tt>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#doubleValue()">doubleValue()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">Gets the fraction as a <tt>double</tt>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#doubleValue()">doubleValue()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dd>
<div class="block">Get the double value corresponding to the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#doubleValue()">doubleValue()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html#DOWNSIDE_VARIANCE">DOWNSIDE_VARIANCE</a></span> - Static variable in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">SemiVariance</a></dt>
<dd>
<div class="block">The DOWNSIDE Direction is used to specify that the observations below
 the cutoff point will be used to calculate SemiVariance</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation"><span class="strong">DSCompiler</span></a> - Class in <a href="./org/apache/commons/math3/analysis/differentiation/package-summary.html">org.apache.commons.math3.analysis.differentiation</a></dt>
<dd>
<div class="block">Class holding "compiled" computation rules for derivative structures.</div>
</dd>
<dt><a href="./org/apache/commons/math3/transform/DstNormalization.html" title="enum in org.apache.commons.math3.transform"><span class="strong">DstNormalization</span></a> - Enum in <a href="./org/apache/commons/math3/transform/package-summary.html">org.apache.commons.math3.transform</a></dt>
<dd>
<div class="block">This enumeration defines the various types of normalizations that can be
 applied to discrete sine transforms (DST).</div>
</dd>
<dt><a href="./org/apache/commons/math3/exception/util/DummyLocalizable.html" title="class in org.apache.commons.math3.exception.util"><span class="strong">DummyLocalizable</span></a> - Class in <a href="./org/apache/commons/math3/exception/util/package-summary.html">org.apache.commons.math3.exception.util</a></dt>
<dd>
<div class="block">Dummy implementation of the <a href="./org/apache/commons/math3/exception/util/Localizable.html" title="interface in org.apache.commons.math3.exception.util"><code>Localizable</code></a> interface, without localization.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/util/DummyLocalizable.html#DummyLocalizable(java.lang.String)">DummyLocalizable(String)</a></span> - Constructor for class org.apache.commons.math3.exception.util.<a href="./org/apache/commons/math3/exception/util/DummyLocalizable.html" title="class in org.apache.commons.math3.exception.util">DummyLocalizable</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/sampling/DummyStepHandler.html" title="class in org.apache.commons.math3.ode.sampling"><span class="strong">DummyStepHandler</span></a> - Class in <a href="./org/apache/commons/math3/ode/sampling/package-summary.html">org.apache.commons.math3.ode.sampling</a></dt>
<dd>
<div class="block">This class is a step handler that does nothing.</div>
</dd>
</dl>
<a name="_E_">
<!--   -->
</a>
<h2 class="title">E</h2>
<dl>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#E">E</a></span> - Static variable in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Napier's constant e, base of the natural logarithm.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/distance/EarthMoversDistance.html" title="class in org.apache.commons.math3.ml.distance"><span class="strong">EarthMoversDistance</span></a> - Class in <a href="./org/apache/commons/math3/ml/distance/package-summary.html">org.apache.commons.math3.ml.distance</a></dt>
<dd>
<div class="block">Calculates the Earh Mover's distance (also known as Wasserstein metric) between two distributions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/distance/EarthMoversDistance.html#EarthMoversDistance()">EarthMoversDistance()</a></span> - Constructor for class org.apache.commons.math3.ml.distance.<a href="./org/apache/commons/math3/ml/distance/EarthMoversDistance.html" title="class in org.apache.commons.math3.ml.distance">EarthMoversDistance</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#ebeAdd(double[], double[])">ebeAdd(double[], double[])</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Creates an array whose contents will be the element-by-element
 addition of the arguments.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#ebeDivide(org.apache.commons.math3.linear.FieldVector)">ebeDivide(FieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Element-by-element division.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#ebeDivide(org.apache.commons.math3.linear.ArrayFieldVector)">ebeDivide(ArrayFieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Element-by-element division.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#ebeDivide(org.apache.commons.math3.linear.RealVector)">ebeDivide(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Element-by-element division.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVector.html#ebeDivide(org.apache.commons.math3.linear.FieldVector)">ebeDivide(FieldVector&lt;T&gt;)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVector.html" title="interface in org.apache.commons.math3.linear">FieldVector</a></dt>
<dd>
<div class="block">Element-by-element division.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#ebeDivide(org.apache.commons.math3.linear.RealVector)">ebeDivide(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Element-by-element division.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#ebeDivide(org.apache.commons.math3.linear.RealVector)">ebeDivide(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Element-by-element division.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#ebeDivide(org.apache.commons.math3.linear.FieldVector)">ebeDivide(FieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Element-by-element division.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#ebeDivide(double[], double[])">ebeDivide(double[], double[])</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Creates an array whose contents will be the element-by-element
 division of the first argument by the second.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#ebeMultiply(org.apache.commons.math3.linear.FieldVector)">ebeMultiply(FieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Element-by-element multiplication.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#ebeMultiply(org.apache.commons.math3.linear.ArrayFieldVector)">ebeMultiply(ArrayFieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Element-by-element multiplication.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#ebeMultiply(org.apache.commons.math3.linear.RealVector)">ebeMultiply(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Element-by-element multiplication.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVector.html#ebeMultiply(org.apache.commons.math3.linear.FieldVector)">ebeMultiply(FieldVector&lt;T&gt;)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVector.html" title="interface in org.apache.commons.math3.linear">FieldVector</a></dt>
<dd>
<div class="block">Element-by-element multiplication.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#ebeMultiply(org.apache.commons.math3.linear.RealVector)">ebeMultiply(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Element-by-element multiplication.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#ebeMultiply(org.apache.commons.math3.linear.RealVector)">ebeMultiply(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Element-by-element multiplication.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#ebeMultiply(org.apache.commons.math3.linear.FieldVector)">ebeMultiply(FieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Element-by-element multiplication.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#ebeMultiply(double[], double[])">ebeMultiply(double[], double[])</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Creates an array whose contents will be the element-by-element
 multiplication of the arguments.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#ebeSubtract(double[], double[])">ebeSubtract(double[], double[])</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Creates an array whose contents will be the element-by-element
 subtraction of the second argument from the first.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/spherical/twod/Edge.html" title="class in org.apache.commons.math3.geometry.spherical.twod"><span class="strong">Edge</span></a> - Class in <a href="./org/apache/commons/math3/geometry/spherical/twod/package-summary.html">org.apache.commons.math3.geometry.spherical.twod</a></dt>
<dd>
<div class="block">Spherical polygons boundary edge.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/EigenDecomposition.html" title="class in org.apache.commons.math3.linear"><span class="strong">EigenDecomposition</span></a> - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Calculates the eigen decomposition of a real matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/EigenDecomposition.html#EigenDecomposition(org.apache.commons.math3.linear.RealMatrix)">EigenDecomposition(RealMatrix)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/EigenDecomposition.html" title="class in org.apache.commons.math3.linear">EigenDecomposition</a></dt>
<dd>
<div class="block">Calculates the eigen decomposition of the given real matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/EigenDecomposition.html#EigenDecomposition(org.apache.commons.math3.linear.RealMatrix, double)">EigenDecomposition(RealMatrix, double)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/EigenDecomposition.html" title="class in org.apache.commons.math3.linear">EigenDecomposition</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>in 3.1 (to be removed in 4.0) due to unused parameter</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/EigenDecomposition.html#EigenDecomposition(double[], double[])">EigenDecomposition(double[], double[])</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/EigenDecomposition.html" title="class in org.apache.commons.math3.linear">EigenDecomposition</a></dt>
<dd>
<div class="block">Calculates the eigen decomposition of the symmetric tridiagonal
 matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/EigenDecomposition.html#EigenDecomposition(double[], double[], double)">EigenDecomposition(double[], double[], double)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/EigenDecomposition.html" title="class in org.apache.commons.math3.linear">EigenDecomposition</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>in 3.1 (to be removed in 4.0) due to unused parameter</i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/genetics/ElitisticListPopulation.html" title="class in org.apache.commons.math3.genetics"><span class="strong">ElitisticListPopulation</span></a> - Class in <a href="./org/apache/commons/math3/genetics/package-summary.html">org.apache.commons.math3.genetics</a></dt>
<dd>
<div class="block">Population of chromosomes which uses elitism (certain percentage of the best
 chromosomes is directly copied to the next generation).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/ElitisticListPopulation.html#ElitisticListPopulation(java.util.List, int, double)">ElitisticListPopulation(List&lt;Chromosome&gt;, int, double)</a></span> - Constructor for class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/ElitisticListPopulation.html" title="class in org.apache.commons.math3.genetics">ElitisticListPopulation</a></dt>
<dd>
<div class="block">Creates a new <a href="./org/apache/commons/math3/genetics/ElitisticListPopulation.html" title="class in org.apache.commons.math3.genetics"><code>ElitisticListPopulation</code></a> instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/ElitisticListPopulation.html#ElitisticListPopulation(int, double)">ElitisticListPopulation(int, double)</a></span> - Constructor for class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/ElitisticListPopulation.html" title="class in org.apache.commons.math3.genetics">ElitisticListPopulation</a></dt>
<dd>
<div class="block">Creates a new <a href="./org/apache/commons/math3/genetics/ElitisticListPopulation.html" title="class in org.apache.commons.math3.genetics"><code>ElitisticListPopulation</code></a> instance and initializes its inner chromosome list.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/nonstiff/EmbeddedRungeKuttaIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff"><span class="strong">EmbeddedRungeKuttaIntegrator</span></a> - Class in <a href="./org/apache/commons/math3/ode/nonstiff/package-summary.html">org.apache.commons.math3.ode.nonstiff</a></dt>
<dd>
<div class="block">This class implements the common part of all embedded Runge-Kutta
 integrators for Ordinary Differential Equations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/EmbeddedRungeKuttaIntegrator.html#EmbeddedRungeKuttaIntegrator(java.lang.String, boolean, double[], double[][], double[], org.apache.commons.math3.ode.nonstiff.RungeKuttaStepInterpolator, double, double, double, double)">EmbeddedRungeKuttaIntegrator(String, boolean, double[], double[][], double[], RungeKuttaStepInterpolator, double, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/EmbeddedRungeKuttaIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">EmbeddedRungeKuttaIntegrator</a></dt>
<dd>
<div class="block">Build a Runge-Kutta integrator with the given Butcher array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/EmbeddedRungeKuttaIntegrator.html#EmbeddedRungeKuttaIntegrator(java.lang.String, boolean, double[], double[][], double[], org.apache.commons.math3.ode.nonstiff.RungeKuttaStepInterpolator, double, double, double[], double[])">EmbeddedRungeKuttaIntegrator(String, boolean, double[], double[][], double[], RungeKuttaStepInterpolator, double, double, double[], double[])</a></span> - Constructor for class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/EmbeddedRungeKuttaIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">EmbeddedRungeKuttaIntegrator</a></dt>
<dd>
<div class="block">Build a Runge-Kutta integrator with the given Butcher array.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/partitioning/Embedding.html" title="interface in org.apache.commons.math3.geometry.partitioning"><span class="strong">Embedding</span></a>&lt;<a href="./org/apache/commons/math3/geometry/partitioning/Embedding.html" title="type parameter in Embedding">S</a> extends <a href="./org/apache/commons/math3/geometry/Space.html" title="interface in org.apache.commons.math3.geometry">Space</a>,<a href="./org/apache/commons/math3/geometry/partitioning/Embedding.html" title="type parameter in Embedding">T</a> extends <a href="./org/apache/commons/math3/geometry/Space.html" title="interface in org.apache.commons.math3.geometry">Space</a>&gt; - Interface in <a href="./org/apache/commons/math3/geometry/partitioning/package-summary.html">org.apache.commons.math3.geometry.partitioning</a></dt>
<dd>
<div class="block">This interface defines mappers between a space and one of its sub-spaces.</div>
</dd>
<dt><a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random"><span class="strong">EmpiricalDistribution</span></a> - Class in <a href="./org/apache/commons/math3/random/package-summary.html">org.apache.commons.math3.random</a></dt>
<dd>
<div class="block">Represents an <a href="http://http://en.wikipedia.org/wiki/Empirical_distribution_function">
 empirical probability distribution</a> -- a probability distribution derived
 from observed data without making any assumptions about the functional form
 of the population distribution that the data come from.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#EmpiricalDistribution()">EmpiricalDistribution()</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random">EmpiricalDistribution</a></dt>
<dd>
<div class="block">Creates a new EmpiricalDistribution with the default bin count.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#EmpiricalDistribution(int)">EmpiricalDistribution(int)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random">EmpiricalDistribution</a></dt>
<dd>
<div class="block">Creates a new EmpiricalDistribution with the specified bin count.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#EmpiricalDistribution(int, org.apache.commons.math3.random.RandomGenerator)">EmpiricalDistribution(int, RandomGenerator)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random">EmpiricalDistribution</a></dt>
<dd>
<div class="block">Creates a new EmpiricalDistribution with the specified bin count using the
 provided <a href="./org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random"><code>RandomGenerator</code></a> as the source of random data.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#EmpiricalDistribution(org.apache.commons.math3.random.RandomGenerator)">EmpiricalDistribution(RandomGenerator)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random">EmpiricalDistribution</a></dt>
<dd>
<div class="block">Creates a new EmpiricalDistribution with default bin count using the
 provided <a href="./org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random"><code>RandomGenerator</code></a> as the source of random data.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#EmpiricalDistribution(int, org.apache.commons.math3.random.RandomDataImpl)">EmpiricalDistribution(int, RandomDataImpl)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random">EmpiricalDistribution</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1. Please use <a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#EmpiricalDistribution(int, org.apache.commons.math3.random.RandomGenerator)"><code>EmpiricalDistribution.EmpiricalDistribution(int,RandomGenerator)</code></a> instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#EmpiricalDistribution(org.apache.commons.math3.random.RandomDataImpl)">EmpiricalDistribution(RandomDataImpl)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random">EmpiricalDistribution</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1. Please use <a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#EmpiricalDistribution(org.apache.commons.math3.random.RandomGenerator)"><code>EmpiricalDistribution.EmpiricalDistribution(RandomGenerator)</code></a> instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/enclosing/Encloser.html#enclose(java.lang.Iterable)">enclose(Iterable&lt;P&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.enclosing.<a href="./org/apache/commons/math3/geometry/enclosing/Encloser.html" title="interface in org.apache.commons.math3.geometry.enclosing">Encloser</a></dt>
<dd>
<div class="block">Find a ball enclosing a list of points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/enclosing/WelzlEncloser.html#enclose(java.lang.Iterable)">enclose(Iterable&lt;P&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.enclosing.<a href="./org/apache/commons/math3/geometry/enclosing/WelzlEncloser.html" title="class in org.apache.commons.math3.geometry.enclosing">WelzlEncloser</a></dt>
<dd>
<div class="block">Find a ball enclosing a list of points.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/enclosing/Encloser.html" title="interface in org.apache.commons.math3.geometry.enclosing"><span class="strong">Encloser</span></a>&lt;<a href="./org/apache/commons/math3/geometry/enclosing/Encloser.html" title="type parameter in Encloser">S</a> extends <a href="./org/apache/commons/math3/geometry/Space.html" title="interface in org.apache.commons.math3.geometry">Space</a>,<a href="./org/apache/commons/math3/geometry/enclosing/Encloser.html" title="type parameter in Encloser">P</a> extends <a href="./org/apache/commons/math3/geometry/Point.html" title="interface in org.apache.commons.math3.geometry">Point</a>&lt;<a href="./org/apache/commons/math3/geometry/enclosing/Encloser.html" title="type parameter in Encloser">S</a>&gt;&gt; - Interface in <a href="./org/apache/commons/math3/geometry/enclosing/package-summary.html">org.apache.commons.math3.geometry.enclosing</a></dt>
<dd>
<div class="block">Interface for algorithms computing enclosing balls.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/enclosing/EnclosingBall.html" title="class in org.apache.commons.math3.geometry.enclosing"><span class="strong">EnclosingBall</span></a>&lt;<a href="./org/apache/commons/math3/geometry/enclosing/EnclosingBall.html" title="type parameter in EnclosingBall">S</a> extends <a href="./org/apache/commons/math3/geometry/Space.html" title="interface in org.apache.commons.math3.geometry">Space</a>,<a href="./org/apache/commons/math3/geometry/enclosing/EnclosingBall.html" title="type parameter in EnclosingBall">P</a> extends <a href="./org/apache/commons/math3/geometry/Point.html" title="interface in org.apache.commons.math3.geometry">Point</a>&lt;<a href="./org/apache/commons/math3/geometry/enclosing/EnclosingBall.html" title="type parameter in EnclosingBall">S</a>&gt;&gt; - Class in <a href="./org/apache/commons/math3/geometry/enclosing/package-summary.html">org.apache.commons.math3.geometry.enclosing</a></dt>
<dd>
<div class="block">This class represents a ball enclosing some points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/enclosing/EnclosingBall.html#EnclosingBall(P, double, P...)">EnclosingBall(P, double, P...)</a></span> - Constructor for class org.apache.commons.math3.geometry.enclosing.<a href="./org/apache/commons/math3/geometry/enclosing/EnclosingBall.html" title="class in org.apache.commons.math3.geometry.enclosing">EnclosingBall</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DefaultFieldMatrixChangingVisitor.html#end()">end()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DefaultFieldMatrixChangingVisitor.html" title="class in org.apache.commons.math3.linear">DefaultFieldMatrixChangingVisitor</a></dt>
<dd>
<div class="block">End visiting a matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DefaultFieldMatrixPreservingVisitor.html#end()">end()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DefaultFieldMatrixPreservingVisitor.html" title="class in org.apache.commons.math3.linear">DefaultFieldMatrixPreservingVisitor</a></dt>
<dd>
<div class="block">End visiting a matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DefaultRealMatrixChangingVisitor.html#end()">end()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DefaultRealMatrixChangingVisitor.html" title="class in org.apache.commons.math3.linear">DefaultRealMatrixChangingVisitor</a></dt>
<dd>
<div class="block">End visiting a matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DefaultRealMatrixPreservingVisitor.html#end()">end()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DefaultRealMatrixPreservingVisitor.html" title="class in org.apache.commons.math3.linear">DefaultRealMatrixPreservingVisitor</a></dt>
<dd>
<div class="block">End visiting a matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrixChangingVisitor.html#end()">end()</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrixChangingVisitor.html" title="interface in org.apache.commons.math3.linear">FieldMatrixChangingVisitor</a></dt>
<dd>
<div class="block">End visiting a matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrixPreservingVisitor.html#end()">end()</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrixPreservingVisitor.html" title="interface in org.apache.commons.math3.linear">FieldMatrixPreservingVisitor</a></dt>
<dd>
<div class="block">End visiting a matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVectorChangingVisitor.html#end()">end()</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVectorChangingVisitor.html" title="interface in org.apache.commons.math3.linear">FieldVectorChangingVisitor</a></dt>
<dd>
<div class="block">End visiting a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVectorPreservingVisitor.html#end()">end()</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVectorPreservingVisitor.html" title="interface in org.apache.commons.math3.linear">FieldVectorPreservingVisitor</a></dt>
<dd>
<div class="block">End visiting a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrixChangingVisitor.html#end()">end()</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrixChangingVisitor.html" title="interface in org.apache.commons.math3.linear">RealMatrixChangingVisitor</a></dt>
<dd>
<div class="block">End visiting a matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrixPreservingVisitor.html#end()">end()</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrixPreservingVisitor.html" title="interface in org.apache.commons.math3.linear">RealMatrixPreservingVisitor</a></dt>
<dd>
<div class="block">End visiting a matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVectorChangingVisitor.html#end()">end()</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVectorChangingVisitor.html" title="interface in org.apache.commons.math3.linear">RealVectorChangingVisitor</a></dt>
<dd>
<div class="block">End visiting a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVectorPreservingVisitor.html#end()">end()</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVectorPreservingVisitor.html" title="interface in org.apache.commons.math3.linear">RealVectorPreservingVisitor</a></dt>
<dd>
<div class="block">End visiting a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#entrySetIterator()">entrySetIterator()</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Return an Iterator over the set of keys and values that have been added.</div>
</dd>
<dt><a href="./org/apache/commons/math3/distribution/EnumeratedDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">EnumeratedDistribution</span></a>&lt;<a href="./org/apache/commons/math3/distribution/EnumeratedDistribution.html" title="type parameter in EnumeratedDistribution">T</a>&gt; - Class in <a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a></dt>
<dd>
<div class="block">A generic implementation of a
 <a href="http://en.wikipedia.org/wiki/Probability_distribution#Discrete_probability_distribution">
 discrete probability distribution (Wikipedia)</a> over a finite sample space,
 based on an enumerated list of &lt;value, probability&gt; pairs.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/EnumeratedDistribution.html#EnumeratedDistribution(java.util.List)">EnumeratedDistribution(List&lt;Pair&lt;T, Double&gt;&gt;)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/EnumeratedDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedDistribution</a></dt>
<dd>
<div class="block">Create an enumerated distribution using the given probability mass function
 enumeration.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/EnumeratedDistribution.html#EnumeratedDistribution(org.apache.commons.math3.random.RandomGenerator, java.util.List)">EnumeratedDistribution(RandomGenerator, List&lt;Pair&lt;T, Double&gt;&gt;)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/EnumeratedDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedDistribution</a></dt>
<dd>
<div class="block">Create an enumerated distribution using the given random number generator
 and probability mass function enumeration.</div>
</dd>
<dt><a href="./org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">EnumeratedIntegerDistribution</span></a> - Class in <a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a></dt>
<dd>
<div class="block">Implementation of an integer-valued <a href="./org/apache/commons/math3/distribution/EnumeratedDistribution.html" title="class in org.apache.commons.math3.distribution"><code>EnumeratedDistribution</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html#EnumeratedIntegerDistribution(int[], double[])">EnumeratedIntegerDistribution(int[], double[])</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedIntegerDistribution</a></dt>
<dd>
<div class="block">Create a discrete distribution using the given probability mass function
 definition.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html#EnumeratedIntegerDistribution(org.apache.commons.math3.random.RandomGenerator, int[], double[])">EnumeratedIntegerDistribution(RandomGenerator, int[], double[])</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedIntegerDistribution</a></dt>
<dd>
<div class="block">Create a discrete distribution using the given random number generator
 and probability mass function definition.</div>
</dd>
<dt><a href="./org/apache/commons/math3/distribution/EnumeratedRealDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">EnumeratedRealDistribution</span></a> - Class in <a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a></dt>
<dd>
<div class="block">Implementation of a real-valued <a href="./org/apache/commons/math3/distribution/EnumeratedDistribution.html" title="class in org.apache.commons.math3.distribution"><code>EnumeratedDistribution</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/EnumeratedRealDistribution.html#EnumeratedRealDistribution(double[], double[])">EnumeratedRealDistribution(double[], double[])</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/EnumeratedRealDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedRealDistribution</a></dt>
<dd>
<div class="block">Create a discrete distribution using the given probability mass function
 enumeration.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/EnumeratedRealDistribution.html#EnumeratedRealDistribution(org.apache.commons.math3.random.RandomGenerator, double[], double[])">EnumeratedRealDistribution(RandomGenerator, double[], double[])</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/EnumeratedRealDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedRealDistribution</a></dt>
<dd>
<div class="block">Create a discrete distribution using the given random number generator
 and probability mass function enumeration.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Precision.html#EPSILON">EPSILON</a></span> - Static variable in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Precision.html" title="class in org.apache.commons.math3.util">Precision</a></dt>
<dd>
<div class="block">
 Largest double-precision floating-point number such that
 <code>1 + EPSILON</code> is numerically equal to 1.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Test for the equality of two derivative structures.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Test for the equality of two sparse gradients.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunction</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Test for equality with another object.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#equals(org.apache.commons.math3.complex.Complex, org.apache.commons.math3.complex.Complex, int)">equals(Complex, Complex, int)</a></span> - Static method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Test for the floating-point equality between Complex objects.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#equals(org.apache.commons.math3.complex.Complex, org.apache.commons.math3.complex.Complex)">equals(Complex, Complex)</a></span> - Static method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Returns <code>true</code> iff the values are equal as defined by
 <a href="./org/apache/commons/math3/complex/Complex.html#equals(org.apache.commons.math3.complex.Complex, org.apache.commons.math3.complex.Complex, int)"><code>equals(x, y, 1)</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#equals(org.apache.commons.math3.complex.Complex, org.apache.commons.math3.complex.Complex, double)">equals(Complex, Complex, double)</a></span> - Static method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Returns <code>true</code> if, both for the real part and for the imaginary
 part, there is no double value strictly between the arguments or the
 difference between them is within the range of allowed error
 (inclusive).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Quaternion.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex">Quaternion</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Quaternion.html#equals(org.apache.commons.math3.complex.Quaternion, double)">equals(Quaternion, double)</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex">Quaternion</a></dt>
<dd>
<div class="block">Checks whether this instance is equal to another quaternion
 within a given tolerance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Check if instance is equal to x.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Test for the equality of two fractions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">Test for the equality of two fractions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Test for the equality of two 1D vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Test for the equality of two 3D vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Test for the equality of two 3D vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Test for the equality of two 2D vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/utilities/OrderedTuple.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.utilities.<a href="./org/apache/commons/math3/geometry/partitioning/utilities/OrderedTuple.html" title="class in org.apache.commons.math3.geometry.partitioning.utilities">OrderedTuple</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/S1Point.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/S1Point.html" title="class in org.apache.commons.math3.geometry.spherical.oned">S1Point</a></dt>
<dd>
<div class="block">Test for the equality of two points on the 2-sphere.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html" title="class in org.apache.commons.math3.geometry.spherical.twod">S2Point</a></dt>
<dd>
<div class="block">Test for the equality of two points on the 2-sphere.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Returns true iff <code>object</code> is a
 <code>FieldMatrix</code> instance with the same dimensions as this
 and all corresponding matrix entries are equal.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Returns true iff <code>object</code> is a
 <code>RealMatrix</code> instance with the same dimensions as this
 and all corresponding matrix entries are equal.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Test for the equality of two vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">
 Test for the equality of two real vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">
 Test for the equality of two real vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">
 Test for the equality of two real vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/DoublePoint.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/DoublePoint.html" title="class in org.apache.commons.math3.ml.clustering">DoublePoint</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/LinearConstraint.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/LinearConstraint.html" title="class in org.apache.commons.math3.optim.linear">LinearConstraint</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/LinearObjectiveFunction.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/LinearObjectiveFunction.html" title="class in org.apache.commons.math3.optim.linear">LinearObjectiveFunction</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/LinearConstraint.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/LinearConstraint.html" title="class in org.apache.commons.math3.optimization.linear">LinearConstraint</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/LinearObjectiveFunction.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/LinearObjectiveFunction.html" title="class in org.apache.commons.math3.optimization.linear">LinearObjectiveFunction</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/clustering/EuclideanDoublePoint.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.stat.clustering.<a href="./org/apache/commons/math3/stat/clustering/EuclideanDoublePoint.html" title="class in org.apache.commons.math3.stat.clustering">EuclideanDoublePoint</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/clustering/EuclideanIntegerPoint.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.stat.clustering.<a href="./org/apache/commons/math3/stat/clustering/EuclideanIntegerPoint.html" title="class in org.apache.commons.math3.stat.clustering">EuclideanIntegerPoint</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AbstractStorelessUnivariateStatistic.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AbstractStorelessUnivariateStatistic.html" title="class in org.apache.commons.math3.stat.descriptive">AbstractStorelessUnivariateStatistic</a></dt>
<dd>
<div class="block">Returns true iff <code>object</code> is an
 <code>AbstractStorelessUnivariateStatistic</code> returning the same
 values as this for <code>getResult()</code> and <code>getN()</code></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/VectorialCovariance.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/VectorialCovariance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">VectorialCovariance</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/VectorialMean.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/VectorialMean.html" title="class in org.apache.commons.math3.stat.descriptive.moment">VectorialMean</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">MultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns true iff <code>object</code> is a <code>MultivariateSummaryStatistics</code>
 instance and all statistics have the same values as this.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummaryValues.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummaryValues.html" title="class in org.apache.commons.math3.stat.descriptive">StatisticalSummaryValues</a></dt>
<dd>
<div class="block">Returns true iff <code>object</code> is a
 <code>StatisticalSummaryValues</code> instance and all statistics have
  the same values as this.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">Returns true iff <code>object</code> is a
 <code>SummaryStatistics</code> instance and all statistics have the
 same values as this.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedMultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns true iff <code>object</code> is a <code>MultivariateSummaryStatistics</code>
 instance and all statistics have the same values as this.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">Returns true iff <code>object</code> is a
 <code>SummaryStatistics</code> instance and all statistics have the
 same values as this.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/DefaultTransformer.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/DefaultTransformer.html" title="class in org.apache.commons.math3.util">DefaultTransformer</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#equals(float[], float[])">equals(float[], float[])</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Returns true iff both arguments are null or have same dimensions and all
 their elements are equal as defined by
 <a href="./org/apache/commons/math3/util/Precision.html#equals(float, float)"><code>Precision.equals(float,float)</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#equals(double[], double[])">equals(double[], double[])</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Returns <code>true</code> iff both arguments are <code>null</code> or have same
 dimensions and all their elements are equal as defined by
 <a href="./org/apache/commons/math3/util/Precision.html#equals(double, double)"><code>Precision.equals(double,double)</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathUtils.html#equals(double, double)">equals(double, double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathUtils.html" title="class in org.apache.commons.math3.util">MathUtils</a></dt>
<dd>
<div class="block">Returns <code>true</code> if the values are equal according to semantics of
 <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Double.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang"><code>Double.equals(Object)</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Pair.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Pair.html" title="class in org.apache.commons.math3.util">Pair</a></dt>
<dd>
<div class="block">Compare the specified object with this entry for equality.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Precision.html#equals(float, float)">equals(float, float)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Precision.html" title="class in org.apache.commons.math3.util">Precision</a></dt>
<dd>
<div class="block">Returns true iff they are equal as defined by
 <a href="./org/apache/commons/math3/util/Precision.html#equals(float, float, int)"><code>equals(x, y, 1)</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Precision.html#equals(float, float, float)">equals(float, float, float)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Precision.html" title="class in org.apache.commons.math3.util">Precision</a></dt>
<dd>
<div class="block">Returns true if both arguments are equal or within the range of allowed
 error (inclusive).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Precision.html#equals(float, float, int)">equals(float, float, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Precision.html" title="class in org.apache.commons.math3.util">Precision</a></dt>
<dd>
<div class="block">Returns true if both arguments are equal or within the range of allowed
 error (inclusive).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Precision.html#equals(double, double)">equals(double, double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Precision.html" title="class in org.apache.commons.math3.util">Precision</a></dt>
<dd>
<div class="block">Returns true iff they are equal as defined by
 <a href="./org/apache/commons/math3/util/Precision.html#equals(double, double, int)"><code>equals(x, y, 1)</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Precision.html#equals(double, double, double)">equals(double, double, double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Precision.html" title="class in org.apache.commons.math3.util">Precision</a></dt>
<dd>
<div class="block">Returns <code>true</code> if there is no double value strictly between the
 arguments or the difference between them is within the range of allowed
 error (inclusive).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Precision.html#equals(double, double, int)">equals(double, double, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Precision.html" title="class in org.apache.commons.math3.util">Precision</a></dt>
<dd>
<div class="block">Returns true if both arguments are equal or within the range of allowed
 error (inclusive).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block">Returns true iff object is a ResizableDoubleArray with the same properties
 as this and an identical internal storage array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/TransformerMap.html#equals(java.lang.Object)">equals(Object)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/TransformerMap.html" title="class in org.apache.commons.math3.util">TransformerMap</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#equalsIncludingNaN(float[], float[])">equalsIncludingNaN(float[], float[])</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Returns true iff both arguments are null or have same dimensions and all
 their elements are equal as defined by
 <a href="./org/apache/commons/math3/util/Precision.html#equalsIncludingNaN(double, double)"><code>this method</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#equalsIncludingNaN(double[], double[])">equalsIncludingNaN(double[], double[])</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Returns <code>true</code> iff both arguments are <code>null</code> or have same
 dimensions and all their elements are equal as defined by
 <a href="./org/apache/commons/math3/util/Precision.html#equalsIncludingNaN(double, double)"><code>this method</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Precision.html#equalsIncludingNaN(float, float)">equalsIncludingNaN(float, float)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Precision.html" title="class in org.apache.commons.math3.util">Precision</a></dt>
<dd>
<div class="block">Returns true if both arguments are NaN or neither is NaN and they are
 equal as defined by <a href="./org/apache/commons/math3/util/Precision.html#equals(float, float)"><code>equals(x, y, 1)</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Precision.html#equalsIncludingNaN(float, float, float)">equalsIncludingNaN(float, float, float)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Precision.html" title="class in org.apache.commons.math3.util">Precision</a></dt>
<dd>
<div class="block">Returns true if both arguments are NaN or are equal or within the range
 of allowed error (inclusive).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Precision.html#equalsIncludingNaN(float, float, int)">equalsIncludingNaN(float, float, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Precision.html" title="class in org.apache.commons.math3.util">Precision</a></dt>
<dd>
<div class="block">Returns true if both arguments are NaN or if they are equal as defined
 by <a href="./org/apache/commons/math3/util/Precision.html#equals(float, float, int)"><code>equals(x, y, maxUlps)</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Precision.html#equalsIncludingNaN(double, double)">equalsIncludingNaN(double, double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Precision.html" title="class in org.apache.commons.math3.util">Precision</a></dt>
<dd>
<div class="block">Returns true if both arguments are NaN or neither is NaN and they are
 equal as defined by <a href="./org/apache/commons/math3/util/Precision.html#equals(double, double)"><code>equals(x, y, 1)</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Precision.html#equalsIncludingNaN(double, double, double)">equalsIncludingNaN(double, double, double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Precision.html" title="class in org.apache.commons.math3.util">Precision</a></dt>
<dd>
<div class="block">Returns true if both arguments are NaN or are equal or within the range
 of allowed error (inclusive).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Precision.html#equalsIncludingNaN(double, double, int)">equalsIncludingNaN(double, double, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Precision.html" title="class in org.apache.commons.math3.util">Precision</a></dt>
<dd>
<div class="block">Returns true if both arguments are NaN or if they are equal as defined
 by <a href="./org/apache/commons/math3/util/Precision.html#equals(double, double, int)"><code>equals(x, y, maxUlps)</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#equalsWithRelativeTolerance(org.apache.commons.math3.complex.Complex, org.apache.commons.math3.complex.Complex, double)">equalsWithRelativeTolerance(Complex, Complex, double)</a></span> - Static method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Returns <code>true</code> if, both for the real part and for the imaginary
 part, there is no double value strictly between the arguments or the
 relative difference between them is smaller or equal to the given
 tolerance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Precision.html#equalsWithRelativeTolerance(double, double, double)">equalsWithRelativeTolerance(double, double, double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Precision.html" title="class in org.apache.commons.math3.util">Precision</a></dt>
<dd>
<div class="block">Returns <code>true</code> if there is no double value strictly between the
 arguments or the relative difference between them is smaller or equal
 to the given tolerance.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/EquationsMapper.html" title="class in org.apache.commons.math3.ode"><span class="strong">EquationsMapper</span></a> - Class in <a href="./org/apache/commons/math3/ode/package-summary.html">org.apache.commons.math3.ode</a></dt>
<dd>
<div class="block">Class mapping the part of a complete state or derivative that pertains
 to a specific differential equation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/EquationsMapper.html#EquationsMapper(int, int)">EquationsMapper(int, int)</a></span> - Constructor for class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/EquationsMapper.html" title="class in org.apache.commons.math3.ode">EquationsMapper</a></dt>
<dd>
<div class="block">simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/special/Erf.html" title="class in org.apache.commons.math3.special"><span class="strong">Erf</span></a> - Class in <a href="./org/apache/commons/math3/special/package-summary.html">org.apache.commons.math3.special</a></dt>
<dd>
<div class="block">This is a utility class that provides computation methods related to the
 error functions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/special/Erf.html#erf(double)">erf(double)</a></span> - Static method in class org.apache.commons.math3.special.<a href="./org/apache/commons/math3/special/Erf.html" title="class in org.apache.commons.math3.special">Erf</a></dt>
<dd>
<div class="block">Returns the error function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/special/Erf.html#erf(double, double)">erf(double, double)</a></span> - Static method in class org.apache.commons.math3.special.<a href="./org/apache/commons/math3/special/Erf.html" title="class in org.apache.commons.math3.special">Erf</a></dt>
<dd>
<div class="block">Returns the difference between erf(x1) and erf(x2).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/special/Erf.html#erfc(double)">erfc(double)</a></span> - Static method in class org.apache.commons.math3.special.<a href="./org/apache/commons/math3/special/Erf.html" title="class in org.apache.commons.math3.special">Erf</a></dt>
<dd>
<div class="block">Returns the complementary error function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/special/Erf.html#erfcInv(double)">erfcInv(double)</a></span> - Static method in class org.apache.commons.math3.special.<a href="./org/apache/commons/math3/special/Erf.html" title="class in org.apache.commons.math3.special">Erf</a></dt>
<dd>
<div class="block">Returns the inverse erfc.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/special/Erf.html#erfInv(double)">erfInv(double)</a></span> - Static method in class org.apache.commons.math3.special.<a href="./org/apache/commons/math3/special/Erf.html" title="class in org.apache.commons.math3.special">Erf</a></dt>
<dd>
<div class="block">Returns the inverse erf.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#ERR_SCALE">ERR_SCALE</a></span> - Static variable in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">The amount under/overflows are scaled by before going to trap handler</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/fitting/MultivariateNormalMixtureExpectationMaximization.html#estimate(double[][], int)">estimate(double[][], int)</a></span> - Static method in class org.apache.commons.math3.distribution.fitting.<a href="./org/apache/commons/math3/distribution/fitting/MultivariateNormalMixtureExpectationMaximization.html" title="class in org.apache.commons.math3.distribution.fitting">MultivariateNormalMixtureExpectationMaximization</a></dt>
<dd>
<div class="block">Helper method to create a multivariate normal mixture model which can be
 used to initialize <a href="./org/apache/commons/math3/distribution/fitting/MultivariateNormalMixtureExpectationMaximization.html#fit(org.apache.commons.math3.distribution.MixtureMultivariateNormalDistribution)"><code>fit(MixtureMultivariateNormalDistribution)</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/DormandPrince54Integrator.html#estimateError(double[][], double[], double[], double)">estimateError(double[][], double[], double[], double)</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/DormandPrince54Integrator.html" title="class in org.apache.commons.math3.ode.nonstiff">DormandPrince54Integrator</a></dt>
<dd>
<div class="block">Compute the error ratio.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/DormandPrince853Integrator.html#estimateError(double[][], double[], double[], double)">estimateError(double[][], double[], double[], double)</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/DormandPrince853Integrator.html" title="class in org.apache.commons.math3.ode.nonstiff">DormandPrince853Integrator</a></dt>
<dd>
<div class="block">Compute the error ratio.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/EmbeddedRungeKuttaIntegrator.html#estimateError(double[][], double[], double[], double)">estimateError(double[][], double[], double[], double)</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/EmbeddedRungeKuttaIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">EmbeddedRungeKuttaIntegrator</a></dt>
<dd>
<div class="block">Compute the error ratio.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/HighamHall54Integrator.html#estimateError(double[][], double[], double[], double)">estimateError(double[][], double[], double[], double)</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/HighamHall54Integrator.html" title="class in org.apache.commons.math3.ode.nonstiff">HighamHall54Integrator</a></dt>
<dd>
<div class="block">Compute the error ratio.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html#estimateErrorVariance()">estimateErrorVariance()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">AbstractMultipleLinearRegression</a></dt>
<dd>
<div class="block">Estimates the variance of the error.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html#estimateRegressandVariance()">estimateRegressandVariance()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">AbstractMultipleLinearRegression</a></dt>
<dd>
<div class="block">Returns the variance of the regressand, ie Var(y).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/MultipleLinearRegression.html#estimateRegressandVariance()">estimateRegressandVariance()</a></span> - Method in interface org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/MultipleLinearRegression.html" title="interface in org.apache.commons.math3.stat.regression">MultipleLinearRegression</a></dt>
<dd>
<div class="block">Returns the variance of the regressand, ie Var(y).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html#estimateRegressionParameters()">estimateRegressionParameters()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">AbstractMultipleLinearRegression</a></dt>
<dd>
<div class="block">Estimates the regression parameters b.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/MultipleLinearRegression.html#estimateRegressionParameters()">estimateRegressionParameters()</a></span> - Method in interface org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/MultipleLinearRegression.html" title="interface in org.apache.commons.math3.stat.regression">MultipleLinearRegression</a></dt>
<dd>
<div class="block">Estimates the regression parameters b.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html#estimateRegressionParametersStandardErrors()">estimateRegressionParametersStandardErrors()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">AbstractMultipleLinearRegression</a></dt>
<dd>
<div class="block">Returns the standard errors of the regression parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/MultipleLinearRegression.html#estimateRegressionParametersStandardErrors()">estimateRegressionParametersStandardErrors()</a></span> - Method in interface org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/MultipleLinearRegression.html" title="interface in org.apache.commons.math3.stat.regression">MultipleLinearRegression</a></dt>
<dd>
<div class="block">Returns the standard errors of the regression parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html#estimateRegressionParametersVariance()">estimateRegressionParametersVariance()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">AbstractMultipleLinearRegression</a></dt>
<dd>
<div class="block">Estimates the variance of the regression parameters, ie Var(b).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/MultipleLinearRegression.html#estimateRegressionParametersVariance()">estimateRegressionParametersVariance()</a></span> - Method in interface org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/MultipleLinearRegression.html" title="interface in org.apache.commons.math3.stat.regression">MultipleLinearRegression</a></dt>
<dd>
<div class="block">Estimates the variance of the regression parameters, ie Var(b).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html#estimateRegressionStandardError()">estimateRegressionStandardError()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">AbstractMultipleLinearRegression</a></dt>
<dd>
<div class="block">Estimates the standard error of the regression.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html#estimateResiduals()">estimateResiduals()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">AbstractMultipleLinearRegression</a></dt>
<dd>
<div class="block">Estimates the residuals, ie u = y - X*b.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/MultipleLinearRegression.html#estimateResiduals()">estimateResiduals()</a></span> - Method in interface org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/MultipleLinearRegression.html" title="interface in org.apache.commons.math3.stat.regression">MultipleLinearRegression</a></dt>
<dd>
<div class="block">Estimates the residuals, ie u = y - X*b.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/oned/Euclidean1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned"><span class="strong">Euclidean1D</span></a> - Class in <a href="./org/apache/commons/math3/geometry/euclidean/oned/package-summary.html">org.apache.commons.math3.geometry.euclidean.oned</a></dt>
<dd>
<div class="block">This class implements a one-dimensional space.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/oned/Euclidean1D.NoSubSpaceException.html" title="class in org.apache.commons.math3.geometry.euclidean.oned"><span class="strong">Euclidean1D.NoSubSpaceException</span></a> - Exception in <a href="./org/apache/commons/math3/geometry/euclidean/oned/package-summary.html">org.apache.commons.math3.geometry.euclidean.oned</a></dt>
<dd>
<div class="block">Specialized exception for inexistent sub-space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Euclidean1D.NoSubSpaceException.html#Euclidean1D.NoSubSpaceException()">Euclidean1D.NoSubSpaceException()</a></span> - Constructor for exception org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Euclidean1D.NoSubSpaceException.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Euclidean1D.NoSubSpaceException</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/twod/Euclidean2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod"><span class="strong">Euclidean2D</span></a> - Class in <a href="./org/apache/commons/math3/geometry/euclidean/twod/package-summary.html">org.apache.commons.math3.geometry.euclidean.twod</a></dt>
<dd>
<div class="block">This class implements a two-dimensional space.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/threed/Euclidean3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed"><span class="strong">Euclidean3D</span></a> - Class in <a href="./org/apache/commons/math3/geometry/euclidean/threed/package-summary.html">org.apache.commons.math3.geometry.euclidean.threed</a></dt>
<dd>
<div class="block">This class implements a three-dimensional space.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/distance/EuclideanDistance.html" title="class in org.apache.commons.math3.ml.distance"><span class="strong">EuclideanDistance</span></a> - Class in <a href="./org/apache/commons/math3/ml/distance/package-summary.html">org.apache.commons.math3.ml.distance</a></dt>
<dd>
<div class="block">Calculates the L<sub>2</sub> (Euclidean) distance between two points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/distance/EuclideanDistance.html#EuclideanDistance()">EuclideanDistance()</a></span> - Constructor for class org.apache.commons.math3.ml.distance.<a href="./org/apache/commons/math3/ml/distance/EuclideanDistance.html" title="class in org.apache.commons.math3.ml.distance">EuclideanDistance</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/stat/clustering/EuclideanDoublePoint.html" title="class in org.apache.commons.math3.stat.clustering"><span class="strong">EuclideanDoublePoint</span></a> - Class in <a href="./org/apache/commons/math3/stat/clustering/package-summary.html">org.apache.commons.math3.stat.clustering</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.2 (to be removed in 4.0),
 use <a href="./org/apache/commons/math3/ml/clustering/DoublePoint.html" title="class in org.apache.commons.math3.ml.clustering"><code>DoublePoint</code></a> instead</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/clustering/EuclideanDoublePoint.html#EuclideanDoublePoint(double[])">EuclideanDoublePoint(double[])</a></span> - Constructor for class org.apache.commons.math3.stat.clustering.<a href="./org/apache/commons/math3/stat/clustering/EuclideanDoublePoint.html" title="class in org.apache.commons.math3.stat.clustering">EuclideanDoublePoint</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build an instance wrapping an integer array.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/clustering/EuclideanIntegerPoint.html" title="class in org.apache.commons.math3.stat.clustering"><span class="strong">EuclideanIntegerPoint</span></a> - Class in <a href="./org/apache/commons/math3/stat/clustering/package-summary.html">org.apache.commons.math3.stat.clustering</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.2 (to be removed in 4.0),
 use <a href="./org/apache/commons/math3/ml/clustering/DoublePoint.html" title="class in org.apache.commons.math3.ml.clustering"><code>DoublePoint</code></a> instead</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/clustering/EuclideanIntegerPoint.html#EuclideanIntegerPoint(int[])">EuclideanIntegerPoint(int[])</a></span> - Constructor for class org.apache.commons.math3.stat.clustering.<a href="./org/apache/commons/math3/stat/clustering/EuclideanIntegerPoint.html" title="class in org.apache.commons.math3.stat.clustering">EuclideanIntegerPoint</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build an instance wrapping an integer array.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/nonstiff/EulerIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff"><span class="strong">EulerIntegrator</span></a> - Class in <a href="./org/apache/commons/math3/ode/nonstiff/package-summary.html">org.apache.commons.math3.ode.nonstiff</a></dt>
<dd>
<div class="block">This class implements a simple Euler integrator for Ordinary
 Differential Equations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/EulerIntegrator.html#EulerIntegrator(double)">EulerIntegrator(double)</a></span> - Constructor for class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/EulerIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">EulerIntegrator</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.html#evaluate(double[], double)">evaluate(double[], double)</a></span> - Static method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunction</a></dt>
<dd>
<div class="block">Uses Horner's Method to evaluate the polynomial with the given coefficients at
 the argument.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionLagrangeForm.html#evaluate(double[], double[], double)">evaluate(double[], double[], double)</a></span> - Static method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionLagrangeForm.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunctionLagrangeForm</a></dt>
<dd>
<div class="block">Evaluate the Lagrange polynomial using
 <a href="http://mathworld.wolfram.com/NevillesAlgorithm.html">
 Neville's Algorithm</a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionNewtonForm.html#evaluate(double[], double[], double)">evaluate(double[], double[], double)</a></span> - Static method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionNewtonForm.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunctionNewtonForm</a></dt>
<dd>
<div class="block">Evaluate the Newton polynomial using nested multiplication.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresAdapter.html#evaluate(org.apache.commons.math3.linear.RealVector)">evaluate(RealVector)</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresAdapter.html" title="class in org.apache.commons.math3.fitting.leastsquares">LeastSquaresAdapter</a></dt>
<dd>
<div class="block">Evaluate the model at the specified point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.html#evaluate(org.apache.commons.math3.linear.RealVector)">evaluate(RealVector)</a></span> - Method in interface org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.html" title="interface in org.apache.commons.math3.fitting.leastsquares">LeastSquaresProblem</a></dt>
<dd>
<div class="block">Evaluate the model at the specified point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/AbstractSimplex.html#evaluate(org.apache.commons.math3.analysis.MultivariateFunction, java.util.Comparator)">evaluate(MultivariateFunction, Comparator&lt;PointValuePair&gt;)</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/AbstractSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">AbstractSimplex</a></dt>
<dd>
<div class="block">Evaluate all the non-evaluated points of the simplex.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/AbstractSimplex.html#evaluate(org.apache.commons.math3.analysis.MultivariateFunction, java.util.Comparator)">evaluate(MultivariateFunction, Comparator&lt;PointValuePair&gt;)</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/AbstractSimplex.html" title="class in org.apache.commons.math3.optimization.direct">AbstractSimplex</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Evaluate all the non-evaluated points of the simplex.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AbstractStorelessUnivariateStatistic.html#evaluate(double[])">evaluate(double[])</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AbstractStorelessUnivariateStatistic.html" title="class in org.apache.commons.math3.stat.descriptive">AbstractStorelessUnivariateStatistic</a></dt>
<dd>
<div class="block">This default implementation calls <a href="./org/apache/commons/math3/stat/descriptive/AbstractStorelessUnivariateStatistic.html#clear()"><code>AbstractStorelessUnivariateStatistic.clear()</code></a>, then invokes
 <a href="./org/apache/commons/math3/stat/descriptive/AbstractStorelessUnivariateStatistic.html#increment(double)"><code>AbstractStorelessUnivariateStatistic.increment(double)</code></a> in a loop over the the input array, and then uses
 <a href="./org/apache/commons/math3/stat/descriptive/AbstractStorelessUnivariateStatistic.html#getResult()"><code>AbstractStorelessUnivariateStatistic.getResult()</code></a> to compute the return value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AbstractStorelessUnivariateStatistic.html#evaluate(double[], int, int)">evaluate(double[], int, int)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AbstractStorelessUnivariateStatistic.html" title="class in org.apache.commons.math3.stat.descriptive">AbstractStorelessUnivariateStatistic</a></dt>
<dd>
<div class="block">This default implementation calls <a href="./org/apache/commons/math3/stat/descriptive/AbstractStorelessUnivariateStatistic.html#clear()"><code>AbstractStorelessUnivariateStatistic.clear()</code></a>, then invokes
 <a href="./org/apache/commons/math3/stat/descriptive/AbstractStorelessUnivariateStatistic.html#increment(double)"><code>AbstractStorelessUnivariateStatistic.increment(double)</code></a> in a loop over the specified portion of the input
 array, and then uses <a href="./org/apache/commons/math3/stat/descriptive/AbstractStorelessUnivariateStatistic.html#getResult()"><code>AbstractStorelessUnivariateStatistic.getResult()</code></a> to compute the return value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AbstractUnivariateStatistic.html#evaluate()">evaluate()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AbstractUnivariateStatistic.html" title="class in org.apache.commons.math3.stat.descriptive">AbstractUnivariateStatistic</a></dt>
<dd>
<div class="block">Returns the result of evaluating the statistic over the stored data.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AbstractUnivariateStatistic.html#evaluate(double[])">evaluate(double[])</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AbstractUnivariateStatistic.html" title="class in org.apache.commons.math3.stat.descriptive">AbstractUnivariateStatistic</a></dt>
<dd>
<div class="block">Returns the result of evaluating the statistic over the input array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AbstractUnivariateStatistic.html#evaluate(double[], int, int)">evaluate(double[], int, int)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AbstractUnivariateStatistic.html" title="class in org.apache.commons.math3.stat.descriptive">AbstractUnivariateStatistic</a></dt>
<dd>
<div class="block">Returns the result of evaluating the statistic over the specified entries
 in the input array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/GeometricMean.html#evaluate(double[], int, int)">evaluate(double[], int, int)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/GeometricMean.html" title="class in org.apache.commons.math3.stat.descriptive.moment">GeometricMean</a></dt>
<dd>
<div class="block">Returns the geometric mean of the entries in the specified portion
 of the input array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Kurtosis.html#evaluate(double[], int, int)">evaluate(double[], int, int)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Kurtosis.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Kurtosis</a></dt>
<dd>
<div class="block">Returns the kurtosis of the entries in the specified portion of the
 input array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Mean.html#evaluate(double[], int, int)">evaluate(double[], int, int)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Mean.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Mean</a></dt>
<dd>
<div class="block">Returns the arithmetic mean of the entries in the specified portion of
 the input array, or <code>Double.NaN</code> if the designated subarray
 is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Mean.html#evaluate(double[], double[], int, int)">evaluate(double[], double[], int, int)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Mean.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Mean</a></dt>
<dd>
<div class="block">Returns the weighted arithmetic mean of the entries in the specified portion of
 the input array, or <code>Double.NaN</code> if the designated subarray
 is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Mean.html#evaluate(double[], double[])">evaluate(double[], double[])</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Mean.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Mean</a></dt>
<dd>
<div class="block">Returns the weighted arithmetic mean of the entries in the input array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html#evaluate(double[], int, int)">evaluate(double[], int, int)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">SemiVariance</a></dt>
<dd>
<div class="block">Returns the <a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html" title="class in org.apache.commons.math3.stat.descriptive.moment"><code>SemiVariance</code></a> of the designated values against the mean, using
 instance properties varianceDirection and biasCorrection.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html#evaluate(double[], org.apache.commons.math3.stat.descriptive.moment.SemiVariance.Direction)">evaluate(double[], SemiVariance.Direction)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">SemiVariance</a></dt>
<dd>
<div class="block">This method calculates <a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html" title="class in org.apache.commons.math3.stat.descriptive.moment"><code>SemiVariance</code></a> for the entire array against the mean, using
 the current value of the biasCorrection instance property.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html#evaluate(double[], double)">evaluate(double[], double)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">SemiVariance</a></dt>
<dd>
<div class="block">Returns the <a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html" title="class in org.apache.commons.math3.stat.descriptive.moment"><code>SemiVariance</code></a> of the designated values against the cutoff, using
 instance properties variancDirection and biasCorrection.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html#evaluate(double[], double, org.apache.commons.math3.stat.descriptive.moment.SemiVariance.Direction)">evaluate(double[], double, SemiVariance.Direction)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">SemiVariance</a></dt>
<dd>
<div class="block">Returns the <a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html" title="class in org.apache.commons.math3.stat.descriptive.moment"><code>SemiVariance</code></a> of the designated values against the cutoff in the
 given direction, using the current value of the biasCorrection instance property.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html#evaluate(double[], double, org.apache.commons.math3.stat.descriptive.moment.SemiVariance.Direction, boolean, int, int)">evaluate(double[], double, SemiVariance.Direction, boolean, int, int)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">SemiVariance</a></dt>
<dd>
<div class="block">Returns the <a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html" title="class in org.apache.commons.math3.stat.descriptive.moment"><code>SemiVariance</code></a> of the designated values against the cutoff
 in the given direction with the provided bias correction.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Skewness.html#evaluate(double[], int, int)">evaluate(double[], int, int)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Skewness.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Skewness</a></dt>
<dd>
<div class="block">Returns the Skewness of the entries in the specifed portion of the
 input array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html#evaluate(double[])">evaluate(double[])</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html" title="class in org.apache.commons.math3.stat.descriptive.moment">StandardDeviation</a></dt>
<dd>
<div class="block">Returns the Standard Deviation of the entries in the input array, or
 <code>Double.NaN</code> if the array is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html#evaluate(double[], int, int)">evaluate(double[], int, int)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html" title="class in org.apache.commons.math3.stat.descriptive.moment">StandardDeviation</a></dt>
<dd>
<div class="block">Returns the Standard Deviation of the entries in the specified portion of
 the input array, or <code>Double.NaN</code> if the designated subarray
 is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html#evaluate(double[], double, int, int)">evaluate(double[], double, int, int)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html" title="class in org.apache.commons.math3.stat.descriptive.moment">StandardDeviation</a></dt>
<dd>
<div class="block">Returns the Standard Deviation of the entries in the specified portion of
 the input array, using the precomputed mean value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html#evaluate(double[], double)">evaluate(double[], double)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html" title="class in org.apache.commons.math3.stat.descriptive.moment">StandardDeviation</a></dt>
<dd>
<div class="block">Returns the Standard Deviation of the entries in the input array, using
 the precomputed mean value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html#evaluate(double[])">evaluate(double[])</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Variance</a></dt>
<dd>
<div class="block">Returns the variance of the entries in the input array, or
 <code>Double.NaN</code> if the array is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html#evaluate(double[], int, int)">evaluate(double[], int, int)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Variance</a></dt>
<dd>
<div class="block">Returns the variance of the entries in the specified portion of
 the input array, or <code>Double.NaN</code> if the designated subarray
 is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html#evaluate(double[], double[], int, int)">evaluate(double[], double[], int, int)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Variance</a></dt>
<dd>
<div class="block">Returns the weighted variance of the entries in the specified portion of
 the input array, or <code>Double.NaN</code> if the designated subarray
 is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html#evaluate(double[], double[])">evaluate(double[], double[])</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Variance</a></dt>
<dd>
<div class="block">
 Returns the weighted variance of the entries in the the input array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html#evaluate(double[], double, int, int)">evaluate(double[], double, int, int)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Variance</a></dt>
<dd>
<div class="block">Returns the variance of the entries in the specified portion of
 the input array, using the precomputed mean value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html#evaluate(double[], double)">evaluate(double[], double)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Variance</a></dt>
<dd>
<div class="block">Returns the variance of the entries in the input array, using the
 precomputed mean value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html#evaluate(double[], double[], double, int, int)">evaluate(double[], double[], double, int, int)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Variance</a></dt>
<dd>
<div class="block">Returns the weighted variance of the entries in the specified portion of
 the input array, using the precomputed weighted mean value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html#evaluate(double[], double[], double)">evaluate(double[], double[], double)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Variance</a></dt>
<dd>
<div class="block">Returns the weighted variance of the values in the input array, using
 the precomputed weighted mean value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/rank/Max.html#evaluate(double[], int, int)">evaluate(double[], int, int)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.rank.<a href="./org/apache/commons/math3/stat/descriptive/rank/Max.html" title="class in org.apache.commons.math3.stat.descriptive.rank">Max</a></dt>
<dd>
<div class="block">Returns the maximum of the entries in the specified portion of
 the input array, or <code>Double.NaN</code> if the designated subarray
 is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/rank/Min.html#evaluate(double[], int, int)">evaluate(double[], int, int)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.rank.<a href="./org/apache/commons/math3/stat/descriptive/rank/Min.html" title="class in org.apache.commons.math3.stat.descriptive.rank">Min</a></dt>
<dd>
<div class="block">Returns the minimum of the entries in the specified portion of
 the input array, or <code>Double.NaN</code> if the designated subarray
 is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/rank/Percentile.html#evaluate(double)">evaluate(double)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.rank.<a href="./org/apache/commons/math3/stat/descriptive/rank/Percentile.html" title="class in org.apache.commons.math3.stat.descriptive.rank">Percentile</a></dt>
<dd>
<div class="block">Returns the result of evaluating the statistic over the stored data.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/rank/Percentile.html#evaluate(double[], double)">evaluate(double[], double)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.rank.<a href="./org/apache/commons/math3/stat/descriptive/rank/Percentile.html" title="class in org.apache.commons.math3.stat.descriptive.rank">Percentile</a></dt>
<dd>
<div class="block">Returns an estimate of the <code>p</code>th percentile of the values
 in the <code>values</code> array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/rank/Percentile.html#evaluate(double[], int, int)">evaluate(double[], int, int)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.rank.<a href="./org/apache/commons/math3/stat/descriptive/rank/Percentile.html" title="class in org.apache.commons.math3.stat.descriptive.rank">Percentile</a></dt>
<dd>
<div class="block">Returns an estimate of the <code>quantile</code>th percentile of the
 designated values in the <code>values</code> array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/rank/Percentile.html#evaluate(double[], int, int, double)">evaluate(double[], int, int, double)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.rank.<a href="./org/apache/commons/math3/stat/descriptive/rank/Percentile.html" title="class in org.apache.commons.math3.stat.descriptive.rank">Percentile</a></dt>
<dd>
<div class="block">Returns an estimate of the <code>p</code>th percentile of the values
 in the <code>values</code> array, starting with the element in (0-based)
 position <code>begin</code> in the array and including <code>length</code>
 values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/Product.html#evaluate(double[], int, int)">evaluate(double[], int, int)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/Product.html" title="class in org.apache.commons.math3.stat.descriptive.summary">Product</a></dt>
<dd>
<div class="block">Returns the product of the entries in the specified portion of
 the input array, or <code>Double.NaN</code> if the designated subarray
 is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/Product.html#evaluate(double[], double[], int, int)">evaluate(double[], double[], int, int)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/Product.html" title="class in org.apache.commons.math3.stat.descriptive.summary">Product</a></dt>
<dd>
<div class="block">Returns the weighted product of the entries in the specified portion of
 the input array, or <code>Double.NaN</code> if the designated subarray
 is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/Product.html#evaluate(double[], double[])">evaluate(double[], double[])</a></span> - Method in class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/Product.html" title="class in org.apache.commons.math3.stat.descriptive.summary">Product</a></dt>
<dd>
<div class="block">Returns the weighted product of the entries in the input array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/Sum.html#evaluate(double[], int, int)">evaluate(double[], int, int)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/Sum.html" title="class in org.apache.commons.math3.stat.descriptive.summary">Sum</a></dt>
<dd>
<div class="block">The sum of the entries in the specified portion of
 the input array, or 0 if the designated subarray
 is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/Sum.html#evaluate(double[], double[], int, int)">evaluate(double[], double[], int, int)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/Sum.html" title="class in org.apache.commons.math3.stat.descriptive.summary">Sum</a></dt>
<dd>
<div class="block">The weighted sum of the entries in the specified portion of
 the input array, or 0 if the designated subarray
 is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/Sum.html#evaluate(double[], double[])">evaluate(double[], double[])</a></span> - Method in class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/Sum.html" title="class in org.apache.commons.math3.stat.descriptive.summary">Sum</a></dt>
<dd>
<div class="block">The weighted sum of the entries in the the input array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfLogs.html#evaluate(double[], int, int)">evaluate(double[], int, int)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfLogs.html" title="class in org.apache.commons.math3.stat.descriptive.summary">SumOfLogs</a></dt>
<dd>
<div class="block">Returns the sum of the natural logs of the entries in the specified portion of
 the input array, or <code>Double.NaN</code> if the designated subarray
 is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfSquares.html#evaluate(double[], int, int)">evaluate(double[], int, int)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfSquares.html" title="class in org.apache.commons.math3.stat.descriptive.summary">SumOfSquares</a></dt>
<dd>
<div class="block">Returns the sum of the squares of the entries in the specified portion of
 the input array, or <code>Double.NaN</code> if the designated subarray
 is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/UnivariateStatistic.html#evaluate(double[])">evaluate(double[])</a></span> - Method in interface org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/UnivariateStatistic.html" title="interface in org.apache.commons.math3.stat.descriptive">UnivariateStatistic</a></dt>
<dd>
<div class="block">Returns the result of evaluating the statistic over the input array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/UnivariateStatistic.html#evaluate(double[], int, int)">evaluate(double[], int, int)</a></span> - Method in interface org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/UnivariateStatistic.html" title="interface in org.apache.commons.math3.stat.descriptive">UnivariateStatistic</a></dt>
<dd>
<div class="block">Returns the result of evaluating the statistic over the specified entries
 in the input array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/WeightedEvaluation.html#evaluate(double[], double[])">evaluate(double[], double[])</a></span> - Method in interface org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/WeightedEvaluation.html" title="interface in org.apache.commons.math3.stat.descriptive">WeightedEvaluation</a></dt>
<dd>
<div class="block">Returns the result of evaluating the statistic over the input array,
 using the supplied weights.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/WeightedEvaluation.html#evaluate(double[], double[], int, int)">evaluate(double[], double[], int, int)</a></span> - Method in interface org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/WeightedEvaluation.html" title="interface in org.apache.commons.math3.stat.descriptive">WeightedEvaluation</a></dt>
<dd>
<div class="block">Returns the result of evaluating the statistic over the specified entries
 in the input array, using corresponding entries in the supplied weights array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ContinuedFraction.html#evaluate(double)">evaluate(double)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ContinuedFraction.html" title="class in org.apache.commons.math3.util">ContinuedFraction</a></dt>
<dd>
<div class="block">Evaluates the continued fraction at the value x.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ContinuedFraction.html#evaluate(double, double)">evaluate(double, double)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ContinuedFraction.html" title="class in org.apache.commons.math3.util">ContinuedFraction</a></dt>
<dd>
<div class="block">Evaluates the continued fraction at the value x.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ContinuedFraction.html#evaluate(double, int)">evaluate(double, int)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ContinuedFraction.html" title="class in org.apache.commons.math3.util">ContinuedFraction</a></dt>
<dd>
<div class="block">Evaluates the continued fraction at the value x.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ContinuedFraction.html#evaluate(double, double, int)">evaluate(double, double, int)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ContinuedFraction.html" title="class in org.apache.commons.math3.util">ContinuedFraction</a></dt>
<dd>
<div class="block">Evaluates the continued fraction at the value x.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.Function.html#evaluate(double[])">evaluate(double[])</a></span> - Method in interface org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.Function.html" title="interface in org.apache.commons.math3.util">MathArrays.Function</a></dt>
<dd>
<div class="block">Operates on an entire array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.Function.html#evaluate(double[], int, int)">evaluate(double[], int, int)</a></span> - Method in interface org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.Function.html" title="interface in org.apache.commons.math3.util">MathArrays.Function</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/events/EventState.html#evaluateStep(org.apache.commons.math3.ode.sampling.StepInterpolator)">evaluateStep(StepInterpolator)</a></span> - Method in class org.apache.commons.math3.ode.events.<a href="./org/apache/commons/math3/ode/events/EventState.html" title="class in org.apache.commons.math3.ode.events">EventState</a></dt>
<dd>
<div class="block">Evaluate the impact of the proposed step on the event handler.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresFactory.html#evaluationChecker(org.apache.commons.math3.optim.ConvergenceChecker)">evaluationChecker(ConvergenceChecker&lt;PointVectorValuePair&gt;)</a></span> - Static method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresFactory.html" title="class in org.apache.commons.math3.fitting.leastsquares">LeastSquaresFactory</a></dt>
<dd>
<div class="block">View a convergence checker specified for a <a href="./org/apache/commons/math3/optim/PointVectorValuePair.html" title="class in org.apache.commons.math3.optim"><code>PointVectorValuePair</code></a> as one
 specified for an <a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.Evaluation.html" title="interface in org.apache.commons.math3.fitting.leastsquares"><code>LeastSquaresProblem.Evaluation</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/BaseOptimizer.html#evaluations">evaluations</a></span> - Variable in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/BaseOptimizer.html" title="class in org.apache.commons.math3.optim">BaseOptimizer</a></dt>
<dd>
<div class="block">Evaluations counter.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html#evaluations">evaluations</a></span> - Variable in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Evaluations counter.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html#evaluations">evaluations</a></span> - Variable in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateVectorOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Evaluations counter.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/events/EventFilter.html" title="class in org.apache.commons.math3.ode.events"><span class="strong">EventFilter</span></a> - Class in <a href="./org/apache/commons/math3/ode/events/package-summary.html">org.apache.commons.math3.ode.events</a></dt>
<dd>
<div class="block">Wrapper used to detect only increasing or decreasing events.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/events/EventFilter.html#EventFilter(org.apache.commons.math3.ode.events.EventHandler, org.apache.commons.math3.ode.events.FilterType)">EventFilter(EventHandler, FilterType)</a></span> - Constructor for class org.apache.commons.math3.ode.events.<a href="./org/apache/commons/math3/ode/events/EventFilter.html" title="class in org.apache.commons.math3.ode.events">EventFilter</a></dt>
<dd>
<div class="block">Wrap an <a href="./org/apache/commons/math3/ode/events/EventHandler.html" title="interface in org.apache.commons.math3.ode.events"><code>event handler</code></a>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/events/EventHandler.html" title="interface in org.apache.commons.math3.ode.events"><span class="strong">EventHandler</span></a> - Interface in <a href="./org/apache/commons/math3/ode/events/package-summary.html">org.apache.commons.math3.ode.events</a></dt>
<dd>
<div class="block">This interface represents a handler for discrete events triggered
 during ODE integration.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/events/EventHandler.Action.html" title="enum in org.apache.commons.math3.ode.events"><span class="strong">EventHandler.Action</span></a> - Enum in <a href="./org/apache/commons/math3/ode/events/package-summary.html">org.apache.commons.math3.ode.events</a></dt>
<dd>
<div class="block">Enumerate for actions to be performed when an event occurs.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/events/EventFilter.html#eventOccurred(double, double[], boolean)">eventOccurred(double, double[], boolean)</a></span> - Method in class org.apache.commons.math3.ode.events.<a href="./org/apache/commons/math3/ode/events/EventFilter.html" title="class in org.apache.commons.math3.ode.events">EventFilter</a></dt>
<dd>
<div class="block">Handle an event and choose what to do next.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/events/EventHandler.html#eventOccurred(double, double[], boolean)">eventOccurred(double, double[], boolean)</a></span> - Method in interface org.apache.commons.math3.ode.events.<a href="./org/apache/commons/math3/ode/events/EventHandler.html" title="interface in org.apache.commons.math3.ode.events">EventHandler</a></dt>
<dd>
<div class="block">Handle an event and choose what to do next.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/events/EventState.html" title="class in org.apache.commons.math3.ode.events"><span class="strong">EventState</span></a> - Class in <a href="./org/apache/commons/math3/ode/events/package-summary.html">org.apache.commons.math3.ode.events</a></dt>
<dd>
<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.</div>
</dd>
<dt><span class="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(EventHandler, double, double, int, UnivariateSolver)</a></span> - Constructor for class org.apache.commons.math3.ode.events.<a href="./org/apache/commons/math3/ode/events/EventState.html" title="class in org.apache.commons.math3.ode.events">EventState</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/GeneticAlgorithm.html#evolve(org.apache.commons.math3.genetics.Population, org.apache.commons.math3.genetics.StoppingCondition)">evolve(Population, StoppingCondition)</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/GeneticAlgorithm.html" title="class in org.apache.commons.math3.genetics">GeneticAlgorithm</a></dt>
<dd>
<div class="block">Evolve the given population.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/TransformUtils.html#exactLog2(int)">exactLog2(int)</a></span> - Static method in class org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/TransformUtils.html" title="class in org.apache.commons.math3.transform">TransformUtils</a></dt>
<dd>
<div class="block">Returns the base-2 logarithm of the specified <code>int</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html#exactP(double, int, int, boolean)">exactP(double, int, int, boolean)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html" title="class in org.apache.commons.math3.stat.inference">KolmogorovSmirnovTest</a></dt>
<dd>
<div class="block">Computes \(P(D_{n,m} > d)\) if <code>strict</code> is <code>true</code>; otherwise \(P(D_{n,m} \ge
 d)\), where \(D_{n,m}\) is the 2-sample Kolmogorov-Smirnov statistic.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#exactP(double, int, int, boolean)">exactP(double, int, int, boolean)</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/exception/util/ExceptionContext.html" title="class in org.apache.commons.math3.exception.util"><span class="strong">ExceptionContext</span></a> - Class in <a href="./org/apache/commons/math3/exception/util/package-summary.html">org.apache.commons.math3.exception.util</a></dt>
<dd>
<div class="block">Class that contains the actual implementation of the functionality mandated
 by the <a href="./org/apache/commons/math3/exception/util/ExceptionContext.html" title="class in org.apache.commons.math3.exception.util"><code>ExceptionContext</code></a> interface.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/util/ExceptionContext.html#ExceptionContext(java.lang.Throwable)">ExceptionContext(Throwable)</a></span> - Constructor for class org.apache.commons.math3.exception.util.<a href="./org/apache/commons/math3/exception/util/ExceptionContext.html" title="class in org.apache.commons.math3.exception.util">ExceptionContext</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/exception/util/ExceptionContextProvider.html" title="interface in org.apache.commons.math3.exception.util"><span class="strong">ExceptionContextProvider</span></a> - Interface in <a href="./org/apache/commons/math3/exception/util/package-summary.html">org.apache.commons.math3.exception.util</a></dt>
<dd>
<div class="block">Interface for accessing the context data structure stored in Commons Math
 exceptions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#exp()">exp()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Exponential.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#exp(double[], int, double[], int)">exp(double[], int, double[], int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Compute exponential of a derivative structure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#exp()">exp()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Exponential.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Exp.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Exp</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Exponential function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Exp.html#Exp()">Exp()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Exp.html" title="class in org.apache.commons.math3.analysis.function">Exp</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#exp()">exp()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Compute the
 <a href="http://mathworld.wolfram.com/ExponentialFunction.html" TARGET="_top">
 exponential function</a> of this complex number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#exp">exp</a></span> - Variable in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Exponent.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#exp()">exp()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Exponential.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpMath.html#exp(org.apache.commons.math3.dfp.Dfp)">exp(Dfp)</a></span> - Static method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpMath.html" title="class in org.apache.commons.math3.dfp">DfpMath</a></dt>
<dd>
<div class="block">Computes e to the given power.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#exp()">exp()</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Exponential.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#exp()">exp()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Exponential.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#exp(double)">exp(double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Exponential function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#expand()">expand()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block">Expands the internal storage array using the expansion factor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html" title="class in org.apache.commons.math3.ode"><span class="strong">ExpandableStatefulODE</span></a> - Class in <a href="./org/apache/commons/math3/ode/package-summary.html">org.apache.commons.math3.ode</a></dt>
<dd>
<div class="block">This class represents a combined set of first order differential equations,
 with at least a primary set of equations expandable by some sets of secondary
 equations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html#ExpandableStatefulODE(org.apache.commons.math3.ode.FirstOrderDifferentialEquations)">ExpandableStatefulODE(FirstOrderDifferentialEquations)</a></span> - Constructor for class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html" title="class in org.apache.commons.math3.ode">ExpandableStatefulODE</a></dt>
<dd>
<div class="block">Build an expandable set from its primary ODE set.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpMath.html#expInternal(org.apache.commons.math3.dfp.Dfp)">expInternal(Dfp)</a></span> - Static method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpMath.html" title="class in org.apache.commons.math3.dfp">DfpMath</a></dt>
<dd>
<div class="block">Computes e to the given power.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#expm1()">expm1()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Exponential minus 1.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#expm1(double[], int, double[], int)">expm1(double[], int, double[], int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Compute exp(x) - 1 of a derivative structure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#expm1()">expm1()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Exponential minus 1.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Expm1.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Expm1</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block"><code>e<sup>x</sup>-1</code> function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Expm1.html#Expm1()">Expm1()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Expm1.html" title="class in org.apache.commons.math3.analysis.function">Expm1</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#expm1()">expm1()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Exponential minus 1.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#expm1()">expm1()</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Exponential minus 1.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#expm1()">expm1()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Exponential minus 1.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#expm1(double)">expm1(double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Compute exp(x) - 1</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/ValueServer.html#EXPONENTIAL_MODE">EXPONENTIAL_MODE</a></span> - Static variable in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/ValueServer.html" title="class in org.apache.commons.math3.random">ValueServer</a></dt>
<dd>
<div class="block">Exponential random deviates with mean = &mu;.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/sofm/LearningFactorFunctionFactory.html#exponentialDecay(double, double, long)">exponentialDecay(double, double, long)</a></span> - Static method in class org.apache.commons.math3.ml.neuralnet.sofm.<a href="./org/apache/commons/math3/ml/neuralnet/sofm/LearningFactorFunctionFactory.html" title="class in org.apache.commons.math3.ml.neuralnet.sofm">LearningFactorFunctionFactory</a></dt>
<dd>
<div class="block">Creates an exponential decay <a href="./org/apache/commons/math3/ml/neuralnet/sofm/LearningFactorFunction.html" title="interface in org.apache.commons.math3.ml.neuralnet.sofm"><code>function</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/sofm/NeighbourhoodSizeFunctionFactory.html#exponentialDecay(double, double, long)">exponentialDecay(double, double, long)</a></span> - Static method in class org.apache.commons.math3.ml.neuralnet.sofm.<a href="./org/apache/commons/math3/ml/neuralnet/sofm/NeighbourhoodSizeFunctionFactory.html" title="class in org.apache.commons.math3.ml.neuralnet.sofm">NeighbourhoodSizeFunctionFactory</a></dt>
<dd>
<div class="block">Creates an exponential decay <a href="./org/apache/commons/math3/ml/neuralnet/sofm/NeighbourhoodSizeFunction.html" title="interface in org.apache.commons.math3.ml.neuralnet.sofm"><code>function</code></a>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/neuralnet/sofm/util/ExponentialDecayFunction.html" title="class in org.apache.commons.math3.ml.neuralnet.sofm.util"><span class="strong">ExponentialDecayFunction</span></a> - Class in <a href="./org/apache/commons/math3/ml/neuralnet/sofm/util/package-summary.html">org.apache.commons.math3.ml.neuralnet.sofm.util</a></dt>
<dd>
<div class="block">Exponential decay function: <code>a e<sup>-x / b</sup></code>,
 where <code>x</code> is the (integer) independent variable.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/sofm/util/ExponentialDecayFunction.html#ExponentialDecayFunction(double, double, long)">ExponentialDecayFunction(double, double, long)</a></span> - Constructor for class org.apache.commons.math3.ml.neuralnet.sofm.util.<a href="./org/apache/commons/math3/ml/neuralnet/sofm/util/ExponentialDecayFunction.html" title="class in org.apache.commons.math3.ml.neuralnet.sofm.util">ExponentialDecayFunction</a></dt>
<dd>
<div class="block">Creates an instance.</div>
</dd>
<dt><a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">ExponentialDistribution</span></a> - Class in <a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a></dt>
<dd>
<div class="block">Implementation of the exponential distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html#ExponentialDistribution(double)">ExponentialDistribution(double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html" title="class in org.apache.commons.math3.distribution">ExponentialDistribution</a></dt>
<dd>
<div class="block">Create an exponential distribution with the given mean.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html#ExponentialDistribution(double, double)">ExponentialDistribution(double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html" title="class in org.apache.commons.math3.distribution">ExponentialDistribution</a></dt>
<dd>
<div class="block">Create an exponential distribution with the given mean.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html#ExponentialDistribution(org.apache.commons.math3.random.RandomGenerator, double)">ExponentialDistribution(RandomGenerator, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html" title="class in org.apache.commons.math3.distribution">ExponentialDistribution</a></dt>
<dd>
<div class="block">Creates an exponential distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html#ExponentialDistribution(org.apache.commons.math3.random.RandomGenerator, double, double)">ExponentialDistribution(RandomGenerator, double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html" title="class in org.apache.commons.math3.distribution">ExponentialDistribution</a></dt>
<dd>
<div class="block">Creates an exponential distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/EquationsMapper.html#extractEquationData(double[], double[])">extractEquationData(double[], double[])</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/EquationsMapper.html" title="class in org.apache.commons.math3.ode">EquationsMapper</a></dt>
<dd>
<div class="block">Extract equation data from a complete state or derivative array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#extractField(T[][])">extractField(T[][])</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Get the elements type from an array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#extractField(T[])">extractField(T[])</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Get the elements type from an array.</div>
</dd>
</dl>
<a name="_F_">
<!--   -->
</a>
<h2 class="title">F</h2>
<dl>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ArithmeticUtils.html#factorial(int)">factorial(int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ArithmeticUtils.html" title="class in org.apache.commons.math3.util">ArithmeticUtils</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>use <a href="./org/apache/commons/math3/util/CombinatoricsUtils.html#factorial(int)"><code>CombinatoricsUtils.factorial(int)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/CombinatoricsUtils.html#factorial(int)">factorial(int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/CombinatoricsUtils.html" title="class in org.apache.commons.math3.util">CombinatoricsUtils</a></dt>
<dd>
<div class="block">Returns n!.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ArithmeticUtils.html#factorialDouble(int)">factorialDouble(int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ArithmeticUtils.html" title="class in org.apache.commons.math3.util">ArithmeticUtils</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>use <a href="./org/apache/commons/math3/util/CombinatoricsUtils.html#factorialDouble(int)"><code>CombinatoricsUtils.factorialDouble(int)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/CombinatoricsUtils.html#factorialDouble(int)">factorialDouble(int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/CombinatoricsUtils.html" title="class in org.apache.commons.math3.util">CombinatoricsUtils</a></dt>
<dd>
<div class="block">Compute n!, the<a href="http://mathworld.wolfram.com/Factorial.html">
 factorial</a> of <code>n</code> (the product of the numbers 1 to n), as a
 <code>double</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ArithmeticUtils.html#factorialLog(int)">factorialLog(int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ArithmeticUtils.html" title="class in org.apache.commons.math3.util">ArithmeticUtils</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>use <a href="./org/apache/commons/math3/util/CombinatoricsUtils.html#factorialLog(int)"><code>CombinatoricsUtils.factorialLog(int)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/CombinatoricsUtils.html#factorialLog(int)">factorialLog(int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/CombinatoricsUtils.html" title="class in org.apache.commons.math3.util">CombinatoricsUtils</a></dt>
<dd>
<div class="block">Compute the natural logarithm of the factorial of <code>n</code>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/transform/FastCosineTransformer.html" title="class in org.apache.commons.math3.transform"><span class="strong">FastCosineTransformer</span></a> - Class in <a href="./org/apache/commons/math3/transform/package-summary.html">org.apache.commons.math3.transform</a></dt>
<dd>
<div class="block">Implements the Fast Cosine Transform for transformation of one-dimensional
 real data sets.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/FastCosineTransformer.html#FastCosineTransformer(org.apache.commons.math3.transform.DctNormalization)">FastCosineTransformer(DctNormalization)</a></span> - Constructor for class org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/FastCosineTransformer.html" title="class in org.apache.commons.math3.transform">FastCosineTransformer</a></dt>
<dd>
<div class="block">Creates a new instance of this class, with various normalization
 conventions.</div>
</dd>
<dt><a href="./org/apache/commons/math3/transform/FastFourierTransformer.html" title="class in org.apache.commons.math3.transform"><span class="strong">FastFourierTransformer</span></a> - Class in <a href="./org/apache/commons/math3/transform/package-summary.html">org.apache.commons.math3.transform</a></dt>
<dd>
<div class="block">Implements the Fast Fourier Transform for transformation of one-dimensional
 real or complex data sets.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/FastFourierTransformer.html#FastFourierTransformer(org.apache.commons.math3.transform.DftNormalization)">FastFourierTransformer(DftNormalization)</a></span> - Constructor for class org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/FastFourierTransformer.html" title="class in org.apache.commons.math3.transform">FastFourierTransformer</a></dt>
<dd>
<div class="block">Creates a new instance of this class, with various normalization
 conventions.</div>
</dd>
<dt><a href="./org/apache/commons/math3/transform/FastHadamardTransformer.html" title="class in org.apache.commons.math3.transform"><span class="strong">FastHadamardTransformer</span></a> - Class in <a href="./org/apache/commons/math3/transform/package-summary.html">org.apache.commons.math3.transform</a></dt>
<dd>
<div class="block">Implements the <a href="http://www.archive.chipcenter.com/dsp/DSP000517F1.html">Fast Hadamard Transform</a> (FHT).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/FastHadamardTransformer.html#FastHadamardTransformer()">FastHadamardTransformer()</a></span> - Constructor for class org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/FastHadamardTransformer.html" title="class in org.apache.commons.math3.transform">FastHadamardTransformer</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util"><span class="strong">FastMath</span></a> - Class in <a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a></dt>
<dd>
<div class="block">Faster, more accurate, portable alternative to <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Math.html?is-external=true" title="class or interface in java.lang"><code>Math</code></a> and
 <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/StrictMath.html?is-external=true" title="class or interface in java.lang"><code>StrictMath</code></a> for large scale computation.</div>
</dd>
<dt><a href="./org/apache/commons/math3/transform/FastSineTransformer.html" title="class in org.apache.commons.math3.transform"><span class="strong">FastSineTransformer</span></a> - Class in <a href="./org/apache/commons/math3/transform/package-summary.html">org.apache.commons.math3.transform</a></dt>
<dd>
<div class="block">Implements the Fast Sine Transform for transformation of one-dimensional real
 data sets.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/FastSineTransformer.html#FastSineTransformer(org.apache.commons.math3.transform.DstNormalization)">FastSineTransformer(DstNormalization)</a></span> - Constructor for class org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/FastSineTransformer.html" title="class in org.apache.commons.math3.transform">FastSineTransformer</a></dt>
<dd>
<div class="block">Creates a new instance of this class, with various normalization conventions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/FastCosineTransformer.html#fct(double[])">fct(double[])</a></span> - Method in class org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/FastCosineTransformer.html" title="class in org.apache.commons.math3.transform">FastCosineTransformer</a></dt>
<dd>
<div class="block">Perform the FCT algorithm (including inverse).</div>
</dd>
<dt><a href="./org/apache/commons/math3/distribution/FDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">FDistribution</span></a> - Class in <a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a></dt>
<dd>
<div class="block">Implementation of the F-distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/FDistribution.html#FDistribution(double, double)">FDistribution(double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/FDistribution.html" title="class in org.apache.commons.math3.distribution">FDistribution</a></dt>
<dd>
<div class="block">Creates an F distribution using the given degrees of freedom.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/FDistribution.html#FDistribution(double, double, double)">FDistribution(double, double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/FDistribution.html" title="class in org.apache.commons.math3.distribution">FDistribution</a></dt>
<dd>
<div class="block">Creates an F distribution using the given degrees of freedom
 and inverse cumulative probability accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/FDistribution.html#FDistribution(org.apache.commons.math3.random.RandomGenerator, double, double)">FDistribution(RandomGenerator, double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/FDistribution.html" title="class in org.apache.commons.math3.distribution">FDistribution</a></dt>
<dd>
<div class="block">Creates an F distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/FDistribution.html#FDistribution(org.apache.commons.math3.random.RandomGenerator, double, double, double)">FDistribution(RandomGenerator, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/FDistribution.html" title="class in org.apache.commons.math3.distribution">FDistribution</a></dt>
<dd>
<div class="block">Creates an F distribution.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/neuralnet/FeatureInitializer.html" title="interface in org.apache.commons.math3.ml.neuralnet"><span class="strong">FeatureInitializer</span></a> - Interface in <a href="./org/apache/commons/math3/ml/neuralnet/package-summary.html">org.apache.commons.math3.ml.neuralnet</a></dt>
<dd>
<div class="block">Defines how to assign the first value of a neuron's feature.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/neuralnet/FeatureInitializerFactory.html" title="class in org.apache.commons.math3.ml.neuralnet"><span class="strong">FeatureInitializerFactory</span></a> - Class in <a href="./org/apache/commons/math3/ml/neuralnet/package-summary.html">org.apache.commons.math3.ml.neuralnet</a></dt>
<dd>
<div class="block">Creates functions that will select the initial values of a neuron's
 features.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/FastHadamardTransformer.html#fht(double[])">fht(double[])</a></span> - Method in class org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/FastHadamardTransformer.html" title="class in org.apache.commons.math3.transform">FastHadamardTransformer</a></dt>
<dd>
<div class="block">The FHT (Fast Hadamard Transformation) which uses only subtraction and
 addition.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/FastHadamardTransformer.html#fht(int[])">fht(int[])</a></span> - Method in class org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/FastHadamardTransformer.html" title="class in org.apache.commons.math3.transform">FastHadamardTransformer</a></dt>
<dd>
<div class="block">Returns the forward transform of the specified integer data set.</div>
</dd>
<dt><a href="./org/apache/commons/math3/Field.html" title="interface in org.apache.commons.math3"><span class="strong">Field</span></a>&lt;<a href="./org/apache/commons/math3/Field.html" title="type parameter in Field">T</a>&gt; - Interface in <a href="./org/apache/commons/math3/package-summary.html">org.apache.commons.math3</a></dt>
<dd>
<div class="block">Interface representing a <a href="http://mathworld.wolfram.com/Field.html">field</a>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/FieldDecompositionSolver.html" title="interface in org.apache.commons.math3.linear"><span class="strong">FieldDecompositionSolver</span></a>&lt;<a href="./org/apache/commons/math3/linear/FieldDecompositionSolver.html" title="type parameter in FieldDecompositionSolver">T</a> extends <a href="./org/apache/commons/math3/FieldElement.html" title="interface in org.apache.commons.math3">FieldElement</a>&lt;<a href="./org/apache/commons/math3/linear/FieldDecompositionSolver.html" title="type parameter in FieldDecompositionSolver">T</a>&gt;&gt; - Interface in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Interface handling decomposition algorithms that can solve A &times; X = B.</div>
</dd>
<dt><a href="./org/apache/commons/math3/FieldElement.html" title="interface in org.apache.commons.math3"><span class="strong">FieldElement</span></a>&lt;<a href="./org/apache/commons/math3/FieldElement.html" title="type parameter in FieldElement">T</a>&gt; - Interface in <a href="./org/apache/commons/math3/package-summary.html">org.apache.commons.math3</a></dt>
<dd>
<div class="block">Interface representing <a href="http://mathworld.wolfram.com/Field.html">field</a> elements.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/interpolation/FieldHermiteInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation"><span class="strong">FieldHermiteInterpolator</span></a>&lt;<a href="./org/apache/commons/math3/analysis/interpolation/FieldHermiteInterpolator.html" title="type parameter in FieldHermiteInterpolator">T</a> extends <a href="./org/apache/commons/math3/FieldElement.html" title="interface in org.apache.commons.math3">FieldElement</a>&lt;<a href="./org/apache/commons/math3/analysis/interpolation/FieldHermiteInterpolator.html" title="type parameter in FieldHermiteInterpolator">T</a>&gt;&gt; - Class in <a href="./org/apache/commons/math3/analysis/interpolation/package-summary.html">org.apache.commons.math3.analysis.interpolation</a></dt>
<dd>
<div class="block">Polynomial interpolator using both sample values and sample derivatives.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/FieldHermiteInterpolator.html#FieldHermiteInterpolator()">FieldHermiteInterpolator()</a></span> - Constructor for class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/FieldHermiteInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">FieldHermiteInterpolator</a></dt>
<dd>
<div class="block">Create an empty interpolator.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/FieldLUDecomposition.html" title="class in org.apache.commons.math3.linear"><span class="strong">FieldLUDecomposition</span></a>&lt;<a href="./org/apache/commons/math3/linear/FieldLUDecomposition.html" title="type parameter in FieldLUDecomposition">T</a> extends <a href="./org/apache/commons/math3/FieldElement.html" title="interface in org.apache.commons.math3">FieldElement</a>&lt;<a href="./org/apache/commons/math3/linear/FieldLUDecomposition.html" title="type parameter in FieldLUDecomposition">T</a>&gt;&gt; - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Calculates the LUP-decomposition of a square matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldLUDecomposition.html#FieldLUDecomposition(org.apache.commons.math3.linear.FieldMatrix)">FieldLUDecomposition(FieldMatrix&lt;T&gt;)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldLUDecomposition.html" title="class in org.apache.commons.math3.linear">FieldLUDecomposition</a></dt>
<dd>
<div class="block">Calculates the LU-decomposition of the given matrix.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear"><span class="strong">FieldMatrix</span></a>&lt;<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="type parameter in FieldMatrix">T</a> extends <a href="./org/apache/commons/math3/FieldElement.html" title="interface in org.apache.commons.math3">FieldElement</a>&lt;<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="type parameter in FieldMatrix">T</a>&gt;&gt; - Interface in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Interface defining field-valued matrix with basic algebraic operations.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/FieldMatrixChangingVisitor.html" title="interface in org.apache.commons.math3.linear"><span class="strong">FieldMatrixChangingVisitor</span></a>&lt;<a href="./org/apache/commons/math3/linear/FieldMatrixChangingVisitor.html" title="type parameter in FieldMatrixChangingVisitor">T</a> extends <a href="./org/apache/commons/math3/FieldElement.html" title="interface in org.apache.commons.math3">FieldElement</a>&lt;?&gt;&gt; - Interface in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Interface defining a visitor for matrix entries.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/FieldMatrixPreservingVisitor.html" title="interface in org.apache.commons.math3.linear"><span class="strong">FieldMatrixPreservingVisitor</span></a>&lt;<a href="./org/apache/commons/math3/linear/FieldMatrixPreservingVisitor.html" title="type parameter in FieldMatrixPreservingVisitor">T</a> extends <a href="./org/apache/commons/math3/FieldElement.html" title="interface in org.apache.commons.math3">FieldElement</a>&lt;?&gt;&gt; - Interface in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Interface defining a visitor for matrix entries.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed"><span class="strong">FieldRotation</span></a>&lt;<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="type parameter in FieldRotation">T</a> extends <a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a>&lt;<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="type parameter in FieldRotation">T</a>&gt;&gt; - Class in <a href="./org/apache/commons/math3/geometry/euclidean/threed/package-summary.html">org.apache.commons.math3.geometry.euclidean.threed</a></dt>
<dd>
<div class="block">This class is a re-implementation of <a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed"><code>Rotation</code></a> using <a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3"><code>RealFieldElement</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html#FieldRotation(T, T, T, T, boolean)">FieldRotation(T, T, T, T, boolean)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldRotation</a></dt>
<dd>
<div class="block">Build a rotation from the quaternion coordinates.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html#FieldRotation(org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D, T)">FieldRotation(FieldVector3D&lt;T&gt;, T)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldRotation</a></dt>
<dd>
<div class="block">Build a rotation from an axis and an angle.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html#FieldRotation(T[][], double)">FieldRotation(T[][], double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldRotation</a></dt>
<dd>
<div class="block">Build a rotation from a 3X3 matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html#FieldRotation(org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">FieldRotation(FieldVector3D&lt;T&gt;, FieldVector3D&lt;T&gt;, FieldVector3D&lt;T&gt;, FieldVector3D&lt;T&gt;)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldRotation</a></dt>
<dd>
<div class="block">Build the rotation that transforms a pair of vector into another pair.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html#FieldRotation(org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">FieldRotation(FieldVector3D&lt;T&gt;, FieldVector3D&lt;T&gt;)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldRotation</a></dt>
<dd>
<div class="block">Build one of the rotations that transform one vector into another one.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html#FieldRotation(org.apache.commons.math3.geometry.euclidean.threed.RotationOrder, T, T, T)">FieldRotation(RotationOrder, T, T, T)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldRotation</a></dt>
<dd>
<div class="block">Build a rotation from three Cardan or Euler elementary rotations.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/FieldVector.html" title="interface in org.apache.commons.math3.linear"><span class="strong">FieldVector</span></a>&lt;<a href="./org/apache/commons/math3/linear/FieldVector.html" title="type parameter in FieldVector">T</a> extends <a href="./org/apache/commons/math3/FieldElement.html" title="interface in org.apache.commons.math3">FieldElement</a>&lt;<a href="./org/apache/commons/math3/linear/FieldVector.html" title="type parameter in FieldVector">T</a>&gt;&gt; - Interface in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Interface defining a field-valued vector with basic algebraic operations.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed"><span class="strong">FieldVector3D</span></a>&lt;<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="type parameter in FieldVector3D">T</a> extends <a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a>&lt;<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="type parameter in FieldVector3D">T</a>&gt;&gt; - Class in <a href="./org/apache/commons/math3/geometry/euclidean/threed/package-summary.html">org.apache.commons.math3.geometry.euclidean.threed</a></dt>
<dd>
<div class="block">This class is a re-implementation of <a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed"><code>Vector3D</code></a> using <a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3"><code>RealFieldElement</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#FieldVector3D(T, T, T)">FieldVector3D(T, T, T)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#FieldVector3D(T[])">FieldVector3D(T[])</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#FieldVector3D(T, T)">FieldVector3D(T, T)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#FieldVector3D(T, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">FieldVector3D(T, FieldVector3D&lt;T&gt;)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Multiplicative constructor
 Build a vector from another one and a scale factor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#FieldVector3D(T, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">FieldVector3D(T, Vector3D)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Multiplicative constructor
 Build a vector from another one and a scale factor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#FieldVector3D(double, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">FieldVector3D(double, FieldVector3D&lt;T&gt;)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Multiplicative constructor
 Build a vector from another one and a scale factor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#FieldVector3D(T, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D, T, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">FieldVector3D(T, FieldVector3D&lt;T&gt;, T, FieldVector3D&lt;T&gt;)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Linear constructor
 Build a vector from two other ones and corresponding scale factors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#FieldVector3D(T, org.apache.commons.math3.geometry.euclidean.threed.Vector3D, T, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">FieldVector3D(T, Vector3D, T, Vector3D)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Linear constructor
 Build a vector from two other ones and corresponding scale factors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#FieldVector3D(double, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D, double, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">FieldVector3D(double, FieldVector3D&lt;T&gt;, double, FieldVector3D&lt;T&gt;)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Linear constructor
 Build a vector from two other ones and corresponding scale factors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#FieldVector3D(T, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D, T, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D, T, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">FieldVector3D(T, FieldVector3D&lt;T&gt;, T, FieldVector3D&lt;T&gt;, T, FieldVector3D&lt;T&gt;)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Linear constructor
 Build a vector from three other ones and corresponding scale factors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#FieldVector3D(T, org.apache.commons.math3.geometry.euclidean.threed.Vector3D, T, org.apache.commons.math3.geometry.euclidean.threed.Vector3D, T, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">FieldVector3D(T, Vector3D, T, Vector3D, T, Vector3D)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Linear constructor
 Build a vector from three other ones and corresponding scale factors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#FieldVector3D(double, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D, double, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D, double, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">FieldVector3D(double, FieldVector3D&lt;T&gt;, double, FieldVector3D&lt;T&gt;, double, FieldVector3D&lt;T&gt;)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Linear constructor
 Build a vector from three other ones and corresponding scale factors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#FieldVector3D(T, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D, T, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D, T, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D, T, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">FieldVector3D(T, FieldVector3D&lt;T&gt;, T, FieldVector3D&lt;T&gt;, T, FieldVector3D&lt;T&gt;, T, FieldVector3D&lt;T&gt;)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Linear constructor
 Build a vector from four other ones and corresponding scale factors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#FieldVector3D(T, org.apache.commons.math3.geometry.euclidean.threed.Vector3D, T, org.apache.commons.math3.geometry.euclidean.threed.Vector3D, T, org.apache.commons.math3.geometry.euclidean.threed.Vector3D, T, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">FieldVector3D(T, Vector3D, T, Vector3D, T, Vector3D, T, Vector3D)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Linear constructor
 Build a vector from four other ones and corresponding scale factors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#FieldVector3D(double, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D, double, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D, double, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D, double, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">FieldVector3D(double, FieldVector3D&lt;T&gt;, double, FieldVector3D&lt;T&gt;, double, FieldVector3D&lt;T&gt;, double, FieldVector3D&lt;T&gt;)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Linear constructor
 Build a vector from four other ones and corresponding scale factors.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/FieldVectorChangingVisitor.html" title="interface in org.apache.commons.math3.linear"><span class="strong">FieldVectorChangingVisitor</span></a>&lt;<a href="./org/apache/commons/math3/linear/FieldVectorChangingVisitor.html" title="type parameter in FieldVectorChangingVisitor">T</a> extends <a href="./org/apache/commons/math3/FieldElement.html" title="interface in org.apache.commons.math3">FieldElement</a>&lt;?&gt;&gt; - Interface in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">This interface defines a visitor for the entries of a vector.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/FieldVectorPreservingVisitor.html" title="interface in org.apache.commons.math3.linear"><span class="strong">FieldVectorPreservingVisitor</span></a>&lt;<a href="./org/apache/commons/math3/linear/FieldVectorPreservingVisitor.html" title="type parameter in FieldVectorPreservingVisitor">T</a> extends <a href="./org/apache/commons/math3/FieldElement.html" title="interface in org.apache.commons.math3">FieldElement</a>&lt;?&gt;&gt; - Interface in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">This interface defines a visitor for the entries of a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/ValueServer.html#fill(double[])">fill(double[])</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/ValueServer.html" title="class in org.apache.commons.math3.random">ValueServer</a></dt>
<dd>
<div class="block">Fills the input array with values generated using getNext() repeatedly.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/ValueServer.html#fill(int)">fill(int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/ValueServer.html" title="class in org.apache.commons.math3.random">ValueServer</a></dt>
<dd>
<div class="block">Returns an array of length <code>length</code> with values generated
 using getNext() repeatedly.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html#filterStep(double, boolean, boolean)">filterStep(double, boolean, boolean)</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">AdaptiveStepsizeIntegrator</a></dt>
<dd>
<div class="block">Filter the integration step.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/events/FilterType.html" title="enum in org.apache.commons.math3.ode.events"><span class="strong">FilterType</span></a> - Enum in <a href="./org/apache/commons/math3/ode/events/package-summary.html">org.apache.commons.math3.ode.events</a></dt>
<dd>
<div class="block">Enumerate for <a href="./org/apache/commons/math3/ode/events/EventFilter.html" title="class in org.apache.commons.math3.ode.events"><code>filtering events</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#finalizeStep()">finalizeStep()</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">Finalize the step.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/MapUtils.html#findBest(double[], java.lang.Iterable, org.apache.commons.math3.ml.distance.DistanceMeasure)">findBest(double[], Iterable&lt;Neuron&gt;, DistanceMeasure)</a></span> - Static method in class org.apache.commons.math3.ml.neuralnet.<a href="./org/apache/commons/math3/ml/neuralnet/MapUtils.html" title="class in org.apache.commons.math3.ml.neuralnet">MapUtils</a></dt>
<dd>
<div class="block">Finds the neuron that best matches the given features.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/MapUtils.html#findBestAndSecondBest(double[], java.lang.Iterable, org.apache.commons.math3.ml.distance.DistanceMeasure)">findBestAndSecondBest(double[], Iterable&lt;Neuron&gt;, DistanceMeasure)</a></span> - Static method in class org.apache.commons.math3.ml.neuralnet.<a href="./org/apache/commons/math3/ml/neuralnet/MapUtils.html" title="class in org.apache.commons.math3.ml.neuralnet">MapUtils</a></dt>
<dd>
<div class="block">Finds the two neurons that best match the given features.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/hull/MonotoneChain.html#findHullVertices(java.util.Collection)">findHullVertices(Collection&lt;Vector2D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.hull.<a href="./org/apache/commons/math3/geometry/euclidean/twod/hull/MonotoneChain.html" title="class in org.apache.commons.math3.geometry.euclidean.twod.hull">MonotoneChain</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/Chromosome.html#findSameChromosome(org.apache.commons.math3.genetics.Population)">findSameChromosome(Population)</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/Chromosome.html" title="class in org.apache.commons.math3.genetics">Chromosome</a></dt>
<dd>
<div class="block">Searches the <code>population</code> for another chromosome with the same representation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#FINITE">FINITE</a></span> - Static variable in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Indicator value for normal finite numbers.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/differentiation/FiniteDifferencesDifferentiator.html" title="class in org.apache.commons.math3.analysis.differentiation"><span class="strong">FiniteDifferencesDifferentiator</span></a> - Class in <a href="./org/apache/commons/math3/analysis/differentiation/package-summary.html">org.apache.commons.math3.analysis.differentiation</a></dt>
<dd>
<div class="block">Univariate functions differentiator using finite differences.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/FiniteDifferencesDifferentiator.html#FiniteDifferencesDifferentiator(int, double)">FiniteDifferencesDifferentiator(int, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/FiniteDifferencesDifferentiator.html" title="class in org.apache.commons.math3.analysis.differentiation">FiniteDifferencesDifferentiator</a></dt>
<dd>
<div class="block">Build a differentiator with number of points and step size when independent variable is unbounded.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/FiniteDifferencesDifferentiator.html#FiniteDifferencesDifferentiator(int, double, double, double)">FiniteDifferencesDifferentiator(int, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/FiniteDifferencesDifferentiator.html" title="class in org.apache.commons.math3.analysis.differentiation">FiniteDifferencesDifferentiator</a></dt>
<dd>
<div class="block">Build a differentiator with number of points and step size when independent variable is bounded.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/IterationManager.html#fireInitializationEvent(org.apache.commons.math3.util.IterationEvent)">fireInitializationEvent(IterationEvent)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/IterationManager.html" title="class in org.apache.commons.math3.util">IterationManager</a></dt>
<dd>
<div class="block">Informs all registered listeners that the initial phase (prior to the
 main iteration loop) has been completed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/IterationManager.html#fireIterationPerformedEvent(org.apache.commons.math3.util.IterationEvent)">fireIterationPerformedEvent(IterationEvent)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/IterationManager.html" title="class in org.apache.commons.math3.util">IterationManager</a></dt>
<dd>
<div class="block">Informs all registered listeners that a new iteration (in the main
 iteration loop) has been performed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/IterationManager.html#fireIterationStartedEvent(org.apache.commons.math3.util.IterationEvent)">fireIterationStartedEvent(IterationEvent)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/IterationManager.html" title="class in org.apache.commons.math3.util">IterationManager</a></dt>
<dd>
<div class="block">Informs all registered listeners that a new iteration (in the main
 iteration loop) has been started.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/IterationManager.html#fireTerminationEvent(org.apache.commons.math3.util.IterationEvent)">fireTerminationEvent(IterationEvent)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/IterationManager.html" title="class in org.apache.commons.math3.util">IterationManager</a></dt>
<dd>
<div class="block">Informs all registered listeners that the final phase (post-iterations)
 has been completed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/StepNormalizerBounds.html#firstIncluded()">firstIncluded()</a></span> - Method in enum org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/StepNormalizerBounds.html" title="enum in org.apache.commons.math3.ode.sampling">StepNormalizerBounds</a></dt>
<dd>
<div class="block">Returns a value indicating whether the first point should be passed
 to the underlying fixed step size step handler.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/PolyhedronsSet.html#firstIntersection(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Line)">firstIntersection(Vector3D, Line)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/PolyhedronsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">PolyhedronsSet</a></dt>
<dd>
<div class="block">Get the first sub-hyperplane crossed by a semi-infinite line.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/FirstOrderConverter.html" title="class in org.apache.commons.math3.ode"><span class="strong">FirstOrderConverter</span></a> - Class in <a href="./org/apache/commons/math3/ode/package-summary.html">org.apache.commons.math3.ode</a></dt>
<dd>
<div class="block">This class converts second order differential equations to first
 order ones.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/FirstOrderConverter.html#FirstOrderConverter(org.apache.commons.math3.ode.SecondOrderDifferentialEquations)">FirstOrderConverter(SecondOrderDifferentialEquations)</a></span> - Constructor for class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/FirstOrderConverter.html" title="class in org.apache.commons.math3.ode">FirstOrderConverter</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/FirstOrderDifferentialEquations.html" title="interface in org.apache.commons.math3.ode"><span class="strong">FirstOrderDifferentialEquations</span></a> - Interface in <a href="./org/apache/commons/math3/ode/package-summary.html">org.apache.commons.math3.ode</a></dt>
<dd>
<div class="block">This interface represents a first order differential equations set.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/FirstOrderIntegrator.html" title="interface in org.apache.commons.math3.ode"><span class="strong">FirstOrderIntegrator</span></a> - Interface in <a href="./org/apache/commons/math3/ode/package-summary.html">org.apache.commons.math3.ode</a></dt>
<dd>
<div class="block">This interface represents a first order integrator for
 differential equations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/fitting/MultivariateNormalMixtureExpectationMaximization.html#fit(org.apache.commons.math3.distribution.MixtureMultivariateNormalDistribution, int, double)">fit(MixtureMultivariateNormalDistribution, int, double)</a></span> - Method in class org.apache.commons.math3.distribution.fitting.<a href="./org/apache/commons/math3/distribution/fitting/MultivariateNormalMixtureExpectationMaximization.html" title="class in org.apache.commons.math3.distribution.fitting">MultivariateNormalMixtureExpectationMaximization</a></dt>
<dd>
<div class="block">Fit a mixture model to the data supplied to the constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/fitting/MultivariateNormalMixtureExpectationMaximization.html#fit(org.apache.commons.math3.distribution.MixtureMultivariateNormalDistribution)">fit(MixtureMultivariateNormalDistribution)</a></span> - Method in class org.apache.commons.math3.distribution.fitting.<a href="./org/apache/commons/math3/distribution/fitting/MultivariateNormalMixtureExpectationMaximization.html" title="class in org.apache.commons.math3.distribution.fitting">MultivariateNormalMixtureExpectationMaximization</a></dt>
<dd>
<div class="block">Fit a mixture model to the data supplied to the constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/AbstractCurveFitter.html#fit(java.util.Collection)">fit(Collection&lt;WeightedObservedPoint&gt;)</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/AbstractCurveFitter.html" title="class in org.apache.commons.math3.fitting">AbstractCurveFitter</a></dt>
<dd>
<div class="block">Fits a curve.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/CurveFitter.html#fit(T, double[])">fit(T, double[])</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/CurveFitter.html" title="class in org.apache.commons.math3.fitting">CurveFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Fit a curve.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/CurveFitter.html#fit(int, T, double[])">fit(int, T, double[])</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/CurveFitter.html" title="class in org.apache.commons.math3.fitting">CurveFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Fit a curve.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/GaussianFitter.html#fit(double[])">fit(double[])</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/GaussianFitter.html" title="class in org.apache.commons.math3.fitting">GaussianFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Fits a Gaussian function to the observed points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/GaussianFitter.html#fit()">fit()</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/GaussianFitter.html" title="class in org.apache.commons.math3.fitting">GaussianFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Fits a Gaussian function to the observed points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/HarmonicFitter.html#fit(double[])">fit(double[])</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/HarmonicFitter.html" title="class in org.apache.commons.math3.fitting">HarmonicFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Fit an harmonic function to the observed points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/HarmonicFitter.html#fit()">fit()</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/HarmonicFitter.html" title="class in org.apache.commons.math3.fitting">HarmonicFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Fit an harmonic function to the observed points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/PolynomialFitter.html#fit(int, double[])">fit(int, double[])</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/PolynomialFitter.html" title="class in org.apache.commons.math3.fitting">PolynomialFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the coefficients of the polynomial fitting the weighted data points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/PolynomialFitter.html#fit(double[])">fit(double[])</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/PolynomialFitter.html" title="class in org.apache.commons.math3.fitting">PolynomialFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the coefficients of the polynomial fitting the weighted data points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/fitting/CurveFitter.html#fit(T, double[])">fit(T, double[])</a></span> - Method in class org.apache.commons.math3.optimization.fitting.<a href="./org/apache/commons/math3/optimization/fitting/CurveFitter.html" title="class in org.apache.commons.math3.optimization.fitting">CurveFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Fit a curve.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/fitting/CurveFitter.html#fit(int, T, double[])">fit(int, T, double[])</a></span> - Method in class org.apache.commons.math3.optimization.fitting.<a href="./org/apache/commons/math3/optimization/fitting/CurveFitter.html" title="class in org.apache.commons.math3.optimization.fitting">CurveFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Fit a curve.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/fitting/GaussianFitter.html#fit(double[])">fit(double[])</a></span> - Method in class org.apache.commons.math3.optimization.fitting.<a href="./org/apache/commons/math3/optimization/fitting/GaussianFitter.html" title="class in org.apache.commons.math3.optimization.fitting">GaussianFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Fits a Gaussian function to the observed points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/fitting/GaussianFitter.html#fit()">fit()</a></span> - Method in class org.apache.commons.math3.optimization.fitting.<a href="./org/apache/commons/math3/optimization/fitting/GaussianFitter.html" title="class in org.apache.commons.math3.optimization.fitting">GaussianFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Fits a Gaussian function to the observed points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/fitting/HarmonicFitter.html#fit(double[])">fit(double[])</a></span> - Method in class org.apache.commons.math3.optimization.fitting.<a href="./org/apache/commons/math3/optimization/fitting/HarmonicFitter.html" title="class in org.apache.commons.math3.optimization.fitting">HarmonicFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Fit an harmonic function to the observed points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/fitting/HarmonicFitter.html#fit()">fit()</a></span> - Method in class org.apache.commons.math3.optimization.fitting.<a href="./org/apache/commons/math3/optimization/fitting/HarmonicFitter.html" title="class in org.apache.commons.math3.optimization.fitting">HarmonicFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Fit an harmonic function to the observed points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/fitting/PolynomialFitter.html#fit()">fit()</a></span> - Method in class org.apache.commons.math3.optimization.fitting.<a href="./org/apache/commons/math3/optimization/fitting/PolynomialFitter.html" title="class in org.apache.commons.math3.optimization.fitting">PolynomialFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>Since 3.1 (to be removed in 4.0). Please use <a href="./org/apache/commons/math3/optimization/fitting/PolynomialFitter.html#fit(double[])"><code>PolynomialFitter.fit(double[])</code></a> instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/fitting/PolynomialFitter.html#fit(int, double[])">fit(int, double[])</a></span> - Method in class org.apache.commons.math3.optimization.fitting.<a href="./org/apache/commons/math3/optimization/fitting/PolynomialFitter.html" title="class in org.apache.commons.math3.optimization.fitting">PolynomialFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the coefficients of the polynomial fitting the weighted data points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/fitting/PolynomialFitter.html#fit(double[])">fit(double[])</a></span> - Method in class org.apache.commons.math3.optimization.fitting.<a href="./org/apache/commons/math3/optimization/fitting/PolynomialFitter.html" title="class in org.apache.commons.math3.optimization.fitting">PolynomialFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the coefficients of the polynomial fitting the weighted data points.</div>
</dd>
<dt><a href="./org/apache/commons/math3/genetics/Fitness.html" title="interface in org.apache.commons.math3.genetics"><span class="strong">Fitness</span></a> - Interface in <a href="./org/apache/commons/math3/genetics/package-summary.html">org.apache.commons.math3.genetics</a></dt>
<dd>
<div class="block">Fitness of a chromosome.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/Fitness.html#fitness()">fitness()</a></span> - Method in interface org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/Fitness.html" title="interface in org.apache.commons.math3.genetics">Fitness</a></dt>
<dd>
<div class="block">Compute the fitness.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/FunctionUtils.html#fix1stArgument(org.apache.commons.math3.analysis.BivariateFunction, double)">fix1stArgument(BivariateFunction, double)</a></span> - Static method in class org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/FunctionUtils.html" title="class in org.apache.commons.math3.analysis">FunctionUtils</a></dt>
<dd>
<div class="block">Creates a unary function by fixing the first argument of a binary function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/FunctionUtils.html#fix2ndArgument(org.apache.commons.math3.analysis.BivariateFunction, double)">fix2ndArgument(BivariateFunction, double)</a></span> - Static method in class org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/FunctionUtils.html" title="class in org.apache.commons.math3.analysis">FunctionUtils</a></dt>
<dd>
<div class="block">Creates a unary function by fixing the second argument of a binary function.</div>
</dd>
<dt><a href="./org/apache/commons/math3/genetics/FixedElapsedTime.html" title="class in org.apache.commons.math3.genetics"><span class="strong">FixedElapsedTime</span></a> - Class in <a href="./org/apache/commons/math3/genetics/package-summary.html">org.apache.commons.math3.genetics</a></dt>
<dd>
<div class="block">Stops after a fixed amount of time has elapsed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/FixedElapsedTime.html#FixedElapsedTime(long)">FixedElapsedTime(long)</a></span> - Constructor for class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/FixedElapsedTime.html" title="class in org.apache.commons.math3.genetics">FixedElapsedTime</a></dt>
<dd>
<div class="block">Create a new <a href="./org/apache/commons/math3/genetics/FixedElapsedTime.html" title="class in org.apache.commons.math3.genetics"><code>FixedElapsedTime</code></a> instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/FixedElapsedTime.html#FixedElapsedTime(long, java.util.concurrent.TimeUnit)">FixedElapsedTime(long, TimeUnit)</a></span> - Constructor for class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/FixedElapsedTime.html" title="class in org.apache.commons.math3.genetics">FixedElapsedTime</a></dt>
<dd>
<div class="block">Create a new <a href="./org/apache/commons/math3/genetics/FixedElapsedTime.html" title="class in org.apache.commons.math3.genetics"><code>FixedElapsedTime</code></a> instance.</div>
</dd>
<dt><a href="./org/apache/commons/math3/genetics/FixedGenerationCount.html" title="class in org.apache.commons.math3.genetics"><span class="strong">FixedGenerationCount</span></a> - Class in <a href="./org/apache/commons/math3/genetics/package-summary.html">org.apache.commons.math3.genetics</a></dt>
<dd>
<div class="block">Stops after a fixed number of generations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/FixedGenerationCount.html#FixedGenerationCount(int)">FixedGenerationCount(int)</a></span> - Constructor for class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/FixedGenerationCount.html" title="class in org.apache.commons.math3.genetics">FixedGenerationCount</a></dt>
<dd>
<div class="block">Create a new FixedGenerationCount instance.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/sampling/FixedStepHandler.html" title="interface in org.apache.commons.math3.ode.sampling"><span class="strong">FixedStepHandler</span></a> - Interface in <a href="./org/apache/commons/math3/ode/sampling/package-summary.html">org.apache.commons.math3.ode.sampling</a></dt>
<dd>
<div class="block">This interface represents a handler that should be called after
 each successful fixed step.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#FLAG_DIV_ZERO">FLAG_DIV_ZERO</a></span> - Static variable in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">IEEE 854-1987 flag for division by zero.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#FLAG_INEXACT">FLAG_INEXACT</a></span> - Static variable in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">IEEE 854-1987 flag for inexact result.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#FLAG_INVALID">FLAG_INVALID</a></span> - Static variable in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">IEEE 854-1987 flag for invalid operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#FLAG_OVERFLOW">FLAG_OVERFLOW</a></span> - Static variable in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">IEEE 854-1987 flag for overflow.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#FLAG_UNDERFLOW">FLAG_UNDERFLOW</a></span> - Static variable in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">IEEE 854-1987 flag for underflow.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/util/ArgUtils.html#flatten(java.lang.Object[])">flatten(Object[])</a></span> - Static method in class org.apache.commons.math3.exception.util.<a href="./org/apache/commons/math3/exception/util/ArgUtils.html" title="class in org.apache.commons.math3.exception.util">ArgUtils</a></dt>
<dd>
<div class="block">Transform a multidimensional array into a one-dimensional list.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#floatValue()">floatValue()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Gets the fraction as a <tt>float</tt>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#floatValue()">floatValue()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">Gets the fraction as a <tt>float</tt>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#floatValue()">floatValue()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">

 The current implementation performs casting to a <code>float</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#floor()">floor()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Get the largest whole number smaller than instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#floor()">floor()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Get the largest whole number smaller than instance.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Floor.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Floor</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block"><code>floor</code> function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Floor.html#Floor()">Floor()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Floor.html" title="class in org.apache.commons.math3.analysis.function">Floor</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#floor()">floor()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Round to an integer using the round floor mode.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#floor()">floor()</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Get the largest whole number smaller than instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#floor()">floor()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Get the largest whole number smaller than instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#floor(double)">floor(double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Get the largest whole number smaller than x.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/UnivariateSolverUtils.html#forceSide(int, org.apache.commons.math3.analysis.UnivariateFunction, org.apache.commons.math3.analysis.solvers.BracketedUnivariateSolver, double, double, double, org.apache.commons.math3.analysis.solvers.AllowedSolution)">forceSide(int, UnivariateFunction, BracketedUnivariateSolver&lt;UnivariateFunction&gt;, double, double, double, AllowedSolution)</a></span> - Static method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/UnivariateSolverUtils.html" title="class in org.apache.commons.math3.analysis.solvers">UnivariateSolverUtils</a></dt>
<dd>
<div class="block">Force a root found by a non-bracketing solver to lie on a specified side,
 as if the solver was a bracketing one.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/ComplexFormat.html#format(org.apache.commons.math3.complex.Complex)">format(Complex)</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/ComplexFormat.html" title="class in org.apache.commons.math3.complex">ComplexFormat</a></dt>
<dd>
<div class="block">This method calls <a href="./org/apache/commons/math3/complex/ComplexFormat.html#format(java.lang.Object, java.lang.StringBuffer, java.text.FieldPosition)"><code>ComplexFormat.format(Object,StringBuffer,FieldPosition)</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/ComplexFormat.html#format(java.lang.Double)">format(Double)</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/ComplexFormat.html" title="class in org.apache.commons.math3.complex">ComplexFormat</a></dt>
<dd>
<div class="block">This method calls <a href="./org/apache/commons/math3/complex/ComplexFormat.html#format(java.lang.Object, java.lang.StringBuffer, java.text.FieldPosition)"><code>ComplexFormat.format(Object,StringBuffer,FieldPosition)</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/ComplexFormat.html#format(org.apache.commons.math3.complex.Complex, java.lang.StringBuffer, java.text.FieldPosition)">format(Complex, StringBuffer, FieldPosition)</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/ComplexFormat.html" title="class in org.apache.commons.math3.complex">ComplexFormat</a></dt>
<dd>
<div class="block">Formats a <a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex"><code>Complex</code></a> object to produce a string.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/ComplexFormat.html#format(java.lang.Object, java.lang.StringBuffer, java.text.FieldPosition)">format(Object, StringBuffer, FieldPosition)</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/ComplexFormat.html" title="class in org.apache.commons.math3.complex">ComplexFormat</a></dt>
<dd>
<div class="block">Formats a object to produce a string.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/AbstractFormat.html#format(double, java.lang.StringBuffer, java.text.FieldPosition)">format(double, StringBuffer, FieldPosition)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/AbstractFormat.html" title="class in org.apache.commons.math3.fraction">AbstractFormat</a></dt>
<dd>
<div class="block">Formats a double value as a fraction and appends the result to a StringBuffer.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/AbstractFormat.html#format(long, java.lang.StringBuffer, java.text.FieldPosition)">format(long, StringBuffer, FieldPosition)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/AbstractFormat.html" title="class in org.apache.commons.math3.fraction">AbstractFormat</a></dt>
<dd>
<div class="block">Formats a long value as a fraction and appends the result to a StringBuffer.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFractionFormat.html#format(org.apache.commons.math3.fraction.BigFraction, java.lang.StringBuffer, java.text.FieldPosition)">format(BigFraction, StringBuffer, FieldPosition)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFractionFormat.html" title="class in org.apache.commons.math3.fraction">BigFractionFormat</a></dt>
<dd>
<div class="block">Formats a <a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction"><code>BigFraction</code></a> object to produce a string.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFractionFormat.html#format(java.lang.Object, java.lang.StringBuffer, java.text.FieldPosition)">format(Object, StringBuffer, FieldPosition)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFractionFormat.html" title="class in org.apache.commons.math3.fraction">BigFractionFormat</a></dt>
<dd>
<div class="block">Formats an object and appends the result to a StringBuffer.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/FractionFormat.html#format(org.apache.commons.math3.fraction.Fraction, java.lang.StringBuffer, java.text.FieldPosition)">format(Fraction, StringBuffer, FieldPosition)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/FractionFormat.html" title="class in org.apache.commons.math3.fraction">FractionFormat</a></dt>
<dd>
<div class="block">Formats a <a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction"><code>Fraction</code></a> object to produce a string.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/FractionFormat.html#format(java.lang.Object, java.lang.StringBuffer, java.text.FieldPosition)">format(Object, StringBuffer, FieldPosition)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/FractionFormat.html" title="class in org.apache.commons.math3.fraction">FractionFormat</a></dt>
<dd>
<div class="block">Formats an object and appends the result to a StringBuffer.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/ProperBigFractionFormat.html#format(org.apache.commons.math3.fraction.BigFraction, java.lang.StringBuffer, java.text.FieldPosition)">format(BigFraction, StringBuffer, FieldPosition)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/ProperBigFractionFormat.html" title="class in org.apache.commons.math3.fraction">ProperBigFractionFormat</a></dt>
<dd>
<div class="block">Formats a <a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction"><code>BigFraction</code></a> object to produce a string.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/ProperFractionFormat.html#format(org.apache.commons.math3.fraction.Fraction, java.lang.StringBuffer, java.text.FieldPosition)">format(Fraction, StringBuffer, FieldPosition)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/ProperFractionFormat.html" title="class in org.apache.commons.math3.fraction">ProperFractionFormat</a></dt>
<dd>
<div class="block">Formats a <a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction"><code>Fraction</code></a> object to produce a string.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1DFormat.html#format(org.apache.commons.math3.geometry.Vector, java.lang.StringBuffer, java.text.FieldPosition)">format(Vector&lt;Euclidean1D&gt;, StringBuffer, FieldPosition)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1DFormat.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1DFormat</a></dt>
<dd>
<div class="block">Formats a <a href="./org/apache/commons/math3/geometry/Vector.html" title="interface in org.apache.commons.math3.geometry"><code>Vector</code></a> object to produce a string.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3DFormat.html#format(org.apache.commons.math3.geometry.Vector, java.lang.StringBuffer, java.text.FieldPosition)">format(Vector&lt;Euclidean3D&gt;, StringBuffer, FieldPosition)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3DFormat.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3DFormat</a></dt>
<dd>
<div class="block">Formats a <a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed"><code>Vector3D</code></a> object to produce a string.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2DFormat.html#format(org.apache.commons.math3.geometry.Vector, java.lang.StringBuffer, java.text.FieldPosition)">format(Vector&lt;Euclidean2D&gt;, StringBuffer, FieldPosition)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2DFormat.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2DFormat</a></dt>
<dd>
<div class="block">Formats a <a href="./org/apache/commons/math3/geometry/Vector.html" title="interface in org.apache.commons.math3.geometry"><code>Vector</code></a> object to produce a string.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/VectorFormat.html#format(org.apache.commons.math3.geometry.Vector)">format(Vector&lt;S&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/VectorFormat.html" title="class in org.apache.commons.math3.geometry">VectorFormat</a></dt>
<dd>
<div class="block">Formats a <a href="./org/apache/commons/math3/geometry/Vector.html" title="interface in org.apache.commons.math3.geometry"><code>Vector</code></a> object to produce a string.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/VectorFormat.html#format(org.apache.commons.math3.geometry.Vector, java.lang.StringBuffer, java.text.FieldPosition)">format(Vector&lt;S&gt;, StringBuffer, FieldPosition)</a></span> - Method in class org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/VectorFormat.html" title="class in org.apache.commons.math3.geometry">VectorFormat</a></dt>
<dd>
<div class="block">Formats a <a href="./org/apache/commons/math3/geometry/Vector.html" title="interface in org.apache.commons.math3.geometry"><code>Vector</code></a> object to produce a string.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/VectorFormat.html#format(java.lang.StringBuffer, java.text.FieldPosition, double...)">format(StringBuffer, FieldPosition, double...)</a></span> - Method in class org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/VectorFormat.html" title="class in org.apache.commons.math3.geometry">VectorFormat</a></dt>
<dd>
<div class="block">Formats the coordinates of a <a href="./org/apache/commons/math3/geometry/Vector.html" title="interface in org.apache.commons.math3.geometry"><code>Vector</code></a> to produce a string.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrixFormat.html#format(org.apache.commons.math3.linear.RealMatrix)">format(RealMatrix)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrixFormat.html" title="class in org.apache.commons.math3.linear">RealMatrixFormat</a></dt>
<dd>
<div class="block">This method calls <a href="./org/apache/commons/math3/linear/RealMatrixFormat.html#format(org.apache.commons.math3.linear.RealMatrix, java.lang.StringBuffer, java.text.FieldPosition)"><code>RealMatrixFormat.format(RealMatrix,StringBuffer,FieldPosition)</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrixFormat.html#format(org.apache.commons.math3.linear.RealMatrix, java.lang.StringBuffer, java.text.FieldPosition)">format(RealMatrix, StringBuffer, FieldPosition)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrixFormat.html" title="class in org.apache.commons.math3.linear">RealMatrixFormat</a></dt>
<dd>
<div class="block">Formats a <a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear"><code>RealMatrix</code></a> object to produce a string.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVectorFormat.html#format(org.apache.commons.math3.linear.RealVector)">format(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVectorFormat.html" title="class in org.apache.commons.math3.linear">RealVectorFormat</a></dt>
<dd>
<div class="block">This method calls <a href="./org/apache/commons/math3/linear/RealVectorFormat.html#format(org.apache.commons.math3.linear.RealVector, java.lang.StringBuffer, java.text.FieldPosition)"><code>RealVectorFormat.format(RealVector,StringBuffer,FieldPosition)</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVectorFormat.html#format(org.apache.commons.math3.linear.RealVector, java.lang.StringBuffer, java.text.FieldPosition)">format(RealVector, StringBuffer, FieldPosition)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVectorFormat.html" title="class in org.apache.commons.math3.linear">RealVectorFormat</a></dt>
<dd>
<div class="block">Formats a <a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear"><code>RealVector</code></a> object to produce a string.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFractionFormat.html#formatBigFraction(org.apache.commons.math3.fraction.BigFraction)">formatBigFraction(BigFraction)</a></span> - Static method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFractionFormat.html" title="class in org.apache.commons.math3.fraction">BigFractionFormat</a></dt>
<dd>
<div class="block">This static method calls formatBigFraction() on a default instance of
 BigFractionFormat.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/CompositeFormat.html#formatDouble(double, java.text.NumberFormat, java.lang.StringBuffer, java.text.FieldPosition)">formatDouble(double, NumberFormat, StringBuffer, FieldPosition)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/CompositeFormat.html" title="class in org.apache.commons.math3.util">CompositeFormat</a></dt>
<dd>
<div class="block">Formats a double value to produce a string.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/FractionFormat.html#formatFraction(org.apache.commons.math3.fraction.Fraction)">formatFraction(Fraction)</a></span> - Static method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/FractionFormat.html" title="class in org.apache.commons.math3.fraction">FractionFormat</a></dt>
<dd>
<div class="block">This static method calls formatFraction() on a default instance of
 FractionFormat.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#FOUR_FIFTHS">FOUR_FIFTHS</a></span> - Static variable in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">A fraction representing "4/5".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#FOUR_FIFTHS">FOUR_FIFTHS</a></span> - Static variable in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">A fraction representing "4/5".</div>
</dd>
<dt><a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction"><span class="strong">Fraction</span></a> - Class in <a href="./org/apache/commons/math3/fraction/package-summary.html">org.apache.commons.math3.fraction</a></dt>
<dd>
<div class="block">Representation of a rational number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#Fraction(double)">Fraction(double)</a></span> - Constructor for class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">Create a fraction given the double value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#Fraction(double, double, int)">Fraction(double, double, int)</a></span> - Constructor for class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">Create a fraction given the double value and maximum error allowed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#Fraction(double, int)">Fraction(double, int)</a></span> - Constructor for class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">Create a fraction given the double value and maximum denominator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#Fraction(int)">Fraction(int)</a></span> - Constructor for class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">Create a fraction from an int.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#Fraction(int, int)">Fraction(int, int)</a></span> - Constructor for class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">Create a fraction given the numerator and denominator.</div>
</dd>
<dt><a href="./org/apache/commons/math3/fraction/FractionConversionException.html" title="class in org.apache.commons.math3.fraction"><span class="strong">FractionConversionException</span></a> - Exception in <a href="./org/apache/commons/math3/fraction/package-summary.html">org.apache.commons.math3.fraction</a></dt>
<dd>
<div class="block">Error thrown when a double value cannot be converted to a fraction
 in the allowed number of iterations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/FractionConversionException.html#FractionConversionException(double, int)">FractionConversionException(double, int)</a></span> - Constructor for exception org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/FractionConversionException.html" title="class in org.apache.commons.math3.fraction">FractionConversionException</a></dt>
<dd>
<div class="block">Constructs an exception with specified formatted detail message.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/FractionConversionException.html#FractionConversionException(double, long, long)">FractionConversionException(double, long, long)</a></span> - Constructor for exception org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/FractionConversionException.html" title="class in org.apache.commons.math3.fraction">FractionConversionException</a></dt>
<dd>
<div class="block">Constructs an exception with specified formatted detail message.</div>
</dd>
<dt><a href="./org/apache/commons/math3/fraction/FractionField.html" title="class in org.apache.commons.math3.fraction"><span class="strong">FractionField</span></a> - Class in <a href="./org/apache/commons/math3/fraction/package-summary.html">org.apache.commons.math3.fraction</a></dt>
<dd>
<div class="block">Representation of the fractional numbers field.</div>
</dd>
<dt><a href="./org/apache/commons/math3/fraction/FractionFormat.html" title="class in org.apache.commons.math3.fraction"><span class="strong">FractionFormat</span></a> - Class in <a href="./org/apache/commons/math3/fraction/package-summary.html">org.apache.commons.math3.fraction</a></dt>
<dd>
<div class="block">Formats a Fraction number in proper format or improper format.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/FractionFormat.html#FractionFormat()">FractionFormat()</a></span> - Constructor for class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/FractionFormat.html" title="class in org.apache.commons.math3.fraction">FractionFormat</a></dt>
<dd>
<div class="block">Create an improper formatting instance with the default number format
 for the numerator and denominator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/FractionFormat.html#FractionFormat(java.text.NumberFormat)">FractionFormat(NumberFormat)</a></span> - Constructor for class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/FractionFormat.html" title="class in org.apache.commons.math3.fraction">FractionFormat</a></dt>
<dd>
<div class="block">Create an improper formatting instance with a custom number format for
 both the numerator and denominator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/FractionFormat.html#FractionFormat(java.text.NumberFormat, java.text.NumberFormat)">FractionFormat(NumberFormat, NumberFormat)</a></span> - Constructor for class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/FractionFormat.html" title="class in org.apache.commons.math3.fraction">FractionFormat</a></dt>
<dd>
<div class="block">Create an improper formatting instance with a custom number format for
 the numerator and a custom number format for the denominator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#fractionMatrixToRealMatrix(org.apache.commons.math3.linear.FieldMatrix)">fractionMatrixToRealMatrix(FieldMatrix&lt;Fraction&gt;)</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Convert a <a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear"><code>FieldMatrix</code></a>/<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction"><code>Fraction</code></a> matrix to a <a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear"><code>RealMatrix</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.html#FREE">FREE</a></span> - Static variable in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.html" title="class in org.apache.commons.math3.util">OpenIntToDoubleHashMap</a></dt>
<dd>
<div class="block">Status indicator for free table entries.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.html#FREE">FREE</a></span> - Static variable in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.html" title="class in org.apache.commons.math3.util">OpenIntToFieldHashMap</a></dt>
<dd>
<div class="block">Status indicator for free table entries.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat"><span class="strong">Frequency</span></a> - Class in <a href="./org/apache/commons/math3/stat/package-summary.html">org.apache.commons.math3.stat</a></dt>
<dd>
<div class="block">Maintains a frequency distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#Frequency()">Frequency()</a></span> - Constructor for class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Default constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#Frequency(java.util.Comparator)">Frequency(Comparator&lt;?&gt;)</a></span> - Constructor for class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Constructor allowing values Comparator to be specified.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/FastSineTransformer.html#fst(double[])">fst(double[])</a></span> - Method in class org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/FastSineTransformer.html" title="class in org.apache.commons.math3.transform">FastSineTransformer</a></dt>
<dd>
<div class="block">Perform the FST algorithm (including inverse).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.html#FULL">FULL</a></span> - Static variable in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.html" title="class in org.apache.commons.math3.util">OpenIntToDoubleHashMap</a></dt>
<dd>
<div class="block">Status indicator for full table entries.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.html#FULL">FULL</a></span> - Static variable in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.html" title="class in org.apache.commons.math3.util">OpenIntToFieldHashMap</a></dt>
<dd>
<div class="block">Status indicator for full table entries.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/FeatureInitializerFactory.html#function(org.apache.commons.math3.analysis.UnivariateFunction, double, double)">function(UnivariateFunction, double, double)</a></span> - Static method in class org.apache.commons.math3.ml.neuralnet.<a href="./org/apache/commons/math3/ml/neuralnet/FeatureInitializerFactory.html" title="class in org.apache.commons.math3.ml.neuralnet">FeatureInitializerFactory</a></dt>
<dd>
<div class="block">Creates an initializer from a univariate function <code>f(x)</code>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/FunctionUtils.html" title="class in org.apache.commons.math3.analysis"><span class="strong">FunctionUtils</span></a> - Class in <a href="./org/apache/commons/math3/analysis/package-summary.html">org.apache.commons.math3.analysis</a></dt>
<dd>
<div class="block">Utilities for manipulating function objects.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/clustering/FuzzyKMeansClusterer.html" title="class in org.apache.commons.math3.ml.clustering"><span class="strong">FuzzyKMeansClusterer</span></a>&lt;<a href="./org/apache/commons/math3/ml/clustering/FuzzyKMeansClusterer.html" title="type parameter in FuzzyKMeansClusterer">T</a> extends <a href="./org/apache/commons/math3/ml/clustering/Clusterable.html" title="interface in org.apache.commons.math3.ml.clustering">Clusterable</a>&gt; - Class in <a href="./org/apache/commons/math3/ml/clustering/package-summary.html">org.apache.commons.math3.ml.clustering</a></dt>
<dd>
<div class="block">Fuzzy K-Means clustering algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/FuzzyKMeansClusterer.html#FuzzyKMeansClusterer(int, double)">FuzzyKMeansClusterer(int, double)</a></span> - Constructor for class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/FuzzyKMeansClusterer.html" title="class in org.apache.commons.math3.ml.clustering">FuzzyKMeansClusterer</a></dt>
<dd>
<div class="block">Creates a new instance of a FuzzyKMeansClusterer.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/FuzzyKMeansClusterer.html#FuzzyKMeansClusterer(int, double, int, org.apache.commons.math3.ml.distance.DistanceMeasure)">FuzzyKMeansClusterer(int, double, int, DistanceMeasure)</a></span> - Constructor for class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/FuzzyKMeansClusterer.html" title="class in org.apache.commons.math3.ml.clustering">FuzzyKMeansClusterer</a></dt>
<dd>
<div class="block">Creates a new instance of a FuzzyKMeansClusterer.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/FuzzyKMeansClusterer.html#FuzzyKMeansClusterer(int, double, int, org.apache.commons.math3.ml.distance.DistanceMeasure, double, org.apache.commons.math3.random.RandomGenerator)">FuzzyKMeansClusterer(int, double, int, DistanceMeasure, double, RandomGenerator)</a></span> - Constructor for class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/FuzzyKMeansClusterer.html" title="class in org.apache.commons.math3.ml.clustering">FuzzyKMeansClusterer</a></dt>
<dd>
<div class="block">Creates a new instance of a FuzzyKMeansClusterer.</div>
</dd>
</dl>
<a name="_G_">
<!--   -->
</a>
<h2 class="title">G</h2>
<dl>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/events/EventFilter.html#g(double, double[])">g(double, double[])</a></span> - Method in class org.apache.commons.math3.ode.events.<a href="./org/apache/commons/math3/ode/events/EventFilter.html" title="class in org.apache.commons.math3.ode.events">EventFilter</a></dt>
<dd>
<div class="block">Compute the value of the switching function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/events/EventHandler.html#g(double, double[])">g(double, double[])</a></span> - Method in interface org.apache.commons.math3.ode.events.<a href="./org/apache/commons/math3/ode/events/EventHandler.html" title="interface in org.apache.commons.math3.ode.events">EventHandler</a></dt>
<dd>
<div class="block">Compute the value of the switching function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/GTest.html#g(double[], long[])">g(double[], long[])</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/GTest.html" title="class in org.apache.commons.math3.stat.inference">GTest</a></dt>
<dd>
<div class="block">Computes the <a href="http://en.wikipedia.org/wiki/G-test">G statistic
 for Goodness of Fit</a> comparing <code>observed</code> and <code>expected</code>
 frequency counts.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#g(double[], long[])">g(double[], long[])</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/special/Gamma.html" title="class in org.apache.commons.math3.special"><span class="strong">Gamma</span></a> - Class in <a href="./org/apache/commons/math3/special/package-summary.html">org.apache.commons.math3.special</a></dt>
<dd>
<div class="block">
 This is a utility class that provides computation methods related to the
 &Gamma; (Gamma) family of functions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/special/Gamma.html#GAMMA">GAMMA</a></span> - Static variable in class org.apache.commons.math3.special.<a href="./org/apache/commons/math3/special/Gamma.html" title="class in org.apache.commons.math3.special">Gamma</a></dt>
<dd>
<div class="block"><a href="http://en.wikipedia.org/wiki/Euler-Mascheroni_constant">Euler-Mascheroni constant</a></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/special/Gamma.html#gamma(double)">gamma(double)</a></span> - Static method in class org.apache.commons.math3.special.<a href="./org/apache/commons/math3/special/Gamma.html" title="class in org.apache.commons.math3.special">Gamma</a></dt>
<dd>
<div class="block">Returns the value of Γ(x).</div>
</dd>
<dt><a href="./org/apache/commons/math3/distribution/GammaDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">GammaDistribution</span></a> - Class in <a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a></dt>
<dd>
<div class="block">Implementation of the Gamma distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/GammaDistribution.html#GammaDistribution(double, double)">GammaDistribution(double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/GammaDistribution.html" title="class in org.apache.commons.math3.distribution">GammaDistribution</a></dt>
<dd>
<div class="block">Creates a new gamma distribution with specified values of the shape and
 scale parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/GammaDistribution.html#GammaDistribution(double, double, double)">GammaDistribution(double, double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/GammaDistribution.html" title="class in org.apache.commons.math3.distribution">GammaDistribution</a></dt>
<dd>
<div class="block">Creates a new gamma distribution with specified values of the shape and
 scale parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/GammaDistribution.html#GammaDistribution(org.apache.commons.math3.random.RandomGenerator, double, double)">GammaDistribution(RandomGenerator, double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/GammaDistribution.html" title="class in org.apache.commons.math3.distribution">GammaDistribution</a></dt>
<dd>
<div class="block">Creates a Gamma distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/GammaDistribution.html#GammaDistribution(org.apache.commons.math3.random.RandomGenerator, double, double, double)">GammaDistribution(RandomGenerator, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/GammaDistribution.html" title="class in org.apache.commons.math3.distribution">GammaDistribution</a></dt>
<dd>
<div class="block">Creates a Gamma distribution.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Gaussian.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Gaussian</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block"><a href="http://en.wikipedia.org/wiki/Gaussian_function">
  Gaussian</a> function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Gaussian.html#Gaussian(double, double, double)">Gaussian(double, double, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Gaussian.html" title="class in org.apache.commons.math3.analysis.function">Gaussian</a></dt>
<dd>
<div class="block">Gaussian with given normalization factor, mean and standard deviation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Gaussian.html#Gaussian(double, double)">Gaussian(double, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Gaussian.html" title="class in org.apache.commons.math3.analysis.function">Gaussian</a></dt>
<dd>
<div class="block">Normalized gaussian with given mean and standard deviation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Gaussian.html#Gaussian()">Gaussian()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Gaussian.html" title="class in org.apache.commons.math3.analysis.function">Gaussian</a></dt>
<dd>
<div class="block">Normalized gaussian with zero mean and unit standard deviation.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Gaussian.Parametric.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Gaussian.Parametric</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Parametric function where the input array contains the parameters of
 the Gaussian, ordered as follows:
 
  Norm
  Mean
  Standard deviation
 </div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Gaussian.Parametric.html#Gaussian.Parametric()">Gaussian.Parametric()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Gaussian.Parametric.html" title="class in org.apache.commons.math3.analysis.function">Gaussian.Parametric</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/ValueServer.html#GAUSSIAN_MODE">GAUSSIAN_MODE</a></span> - Static variable in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/ValueServer.html" title="class in org.apache.commons.math3.random">ValueServer</a></dt>
<dd>
<div class="block">Gaussian random deviates with mean = &mu;, std dev = &sigma;.</div>
</dd>
<dt><a href="./org/apache/commons/math3/fitting/GaussianCurveFitter.html" title="class in org.apache.commons.math3.fitting"><span class="strong">GaussianCurveFitter</span></a> - Class in <a href="./org/apache/commons/math3/fitting/package-summary.html">org.apache.commons.math3.fitting</a></dt>
<dd>
<div class="block">Fits points to a <a href="./org/apache/commons/math3/analysis/function/Gaussian.Parametric.html" title="class in org.apache.commons.math3.analysis.function"><code>Gaussian</code></a>
 function.</div>
</dd>
<dt><a href="./org/apache/commons/math3/fitting/GaussianCurveFitter.ParameterGuesser.html" title="class in org.apache.commons.math3.fitting"><span class="strong">GaussianCurveFitter.ParameterGuesser</span></a> - Class in <a href="./org/apache/commons/math3/fitting/package-summary.html">org.apache.commons.math3.fitting</a></dt>
<dd>
<div class="block">Guesses the parameters <code>norm</code>, <code>mean</code>, and <code>sigma</code>
 of a <a href="./org/apache/commons/math3/analysis/function/Gaussian.Parametric.html" title="class in org.apache.commons.math3.analysis.function"><code>Gaussian.Parametric</code></a>
 based on the specified observed points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/GaussianCurveFitter.ParameterGuesser.html#GaussianCurveFitter.ParameterGuesser(java.util.Collection)">GaussianCurveFitter.ParameterGuesser(Collection&lt;WeightedObservedPoint&gt;)</a></span> - Constructor for class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/GaussianCurveFitter.ParameterGuesser.html" title="class in org.apache.commons.math3.fitting">GaussianCurveFitter.ParameterGuesser</a></dt>
<dd>
<div class="block">Constructs instance with the specified observed points.</div>
</dd>
<dt><a href="./org/apache/commons/math3/fitting/GaussianFitter.html" title="class in org.apache.commons.math3.fitting"><span class="strong">GaussianFitter</span></a> - Class in <a href="./org/apache/commons/math3/fitting/package-summary.html">org.apache.commons.math3.fitting</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.3. Please use <a href="./org/apache/commons/math3/fitting/GaussianCurveFitter.html" title="class in org.apache.commons.math3.fitting"><code>GaussianCurveFitter</code></a> and
 <a href="./org/apache/commons/math3/fitting/WeightedObservedPoints.html" title="class in org.apache.commons.math3.fitting"><code>WeightedObservedPoints</code></a> instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/GaussianFitter.html#GaussianFitter(org.apache.commons.math3.optim.nonlinear.vector.MultivariateVectorOptimizer)">GaussianFitter(MultivariateVectorOptimizer)</a></span> - Constructor for class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/GaussianFitter.html" title="class in org.apache.commons.math3.fitting">GaussianFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Constructs an instance using the specified optimizer.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/fitting/GaussianFitter.html" title="class in org.apache.commons.math3.optimization.fitting"><span class="strong">GaussianFitter</span></a> - Class in <a href="./org/apache/commons/math3/optimization/fitting/package-summary.html">org.apache.commons.math3.optimization.fitting</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/fitting/GaussianFitter.html#GaussianFitter(org.apache.commons.math3.optimization.DifferentiableMultivariateVectorOptimizer)">GaussianFitter(DifferentiableMultivariateVectorOptimizer)</a></span> - Constructor for class org.apache.commons.math3.optimization.fitting.<a href="./org/apache/commons/math3/optimization/fitting/GaussianFitter.html" title="class in org.apache.commons.math3.optimization.fitting">GaussianFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Constructs an instance using the specified optimizer.</div>
</dd>
<dt><a href="./org/apache/commons/math3/fitting/GaussianFitter.ParameterGuesser.html" title="class in org.apache.commons.math3.fitting"><span class="strong">GaussianFitter.ParameterGuesser</span></a> - Class in <a href="./org/apache/commons/math3/fitting/package-summary.html">org.apache.commons.math3.fitting</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Guesses the parameters <code>norm</code>, <code>mean</code>, and <code>sigma</code>
 of a <a href="./org/apache/commons/math3/analysis/function/Gaussian.Parametric.html" title="class in org.apache.commons.math3.analysis.function"><code>Gaussian.Parametric</code></a>
 based on the specified observed points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/GaussianFitter.ParameterGuesser.html#GaussianFitter.ParameterGuesser(org.apache.commons.math3.fitting.WeightedObservedPoint[])">GaussianFitter.ParameterGuesser(WeightedObservedPoint[])</a></span> - Constructor for class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/GaussianFitter.ParameterGuesser.html" title="class in org.apache.commons.math3.fitting">GaussianFitter.ParameterGuesser</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Constructs instance with the specified observed points.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/fitting/GaussianFitter.ParameterGuesser.html" title="class in org.apache.commons.math3.optimization.fitting"><span class="strong">GaussianFitter.ParameterGuesser</span></a> - Class in <a href="./org/apache/commons/math3/optimization/fitting/package-summary.html">org.apache.commons.math3.optimization.fitting</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Guesses the parameters <code>norm</code>, <code>mean</code>, and <code>sigma</code>
 of a <a href="./org/apache/commons/math3/analysis/function/Gaussian.Parametric.html" title="class in org.apache.commons.math3.analysis.function"><code>Gaussian.Parametric</code></a>
 based on the specified observed points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/fitting/GaussianFitter.ParameterGuesser.html#GaussianFitter.ParameterGuesser(org.apache.commons.math3.optimization.fitting.WeightedObservedPoint[])">GaussianFitter.ParameterGuesser(WeightedObservedPoint[])</a></span> - Constructor for class org.apache.commons.math3.optimization.fitting.<a href="./org/apache/commons/math3/optimization/fitting/GaussianFitter.ParameterGuesser.html" title="class in org.apache.commons.math3.optimization.fitting">GaussianFitter.ParameterGuesser</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Constructs instance with the specified observed points.</div>
</dd>
<dt><a href="./org/apache/commons/math3/random/GaussianRandomGenerator.html" title="class in org.apache.commons.math3.random"><span class="strong">GaussianRandomGenerator</span></a> - Class in <a href="./org/apache/commons/math3/random/package-summary.html">org.apache.commons.math3.random</a></dt>
<dd>
<div class="block">This class is a gaussian normalized random generator for scalars.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/GaussianRandomGenerator.html#GaussianRandomGenerator(org.apache.commons.math3.random.RandomGenerator)">GaussianRandomGenerator(RandomGenerator)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/GaussianRandomGenerator.html" title="class in org.apache.commons.math3.random">GaussianRandomGenerator</a></dt>
<dd>
<div class="block">Create a new generator.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/integration/gauss/GaussIntegrator.html" title="class in org.apache.commons.math3.analysis.integration.gauss"><span class="strong">GaussIntegrator</span></a> - Class in <a href="./org/apache/commons/math3/analysis/integration/gauss/package-summary.html">org.apache.commons.math3.analysis.integration.gauss</a></dt>
<dd>
<div class="block">Class that implements the Gaussian rule for
 <a href="./org/apache/commons/math3/analysis/integration/gauss/GaussIntegrator.html#integrate(org.apache.commons.math3.analysis.UnivariateFunction)"><code>integrating</code></a> a weighted
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/gauss/GaussIntegrator.html#GaussIntegrator(double[], double[])">GaussIntegrator(double[], double[])</a></span> - Constructor for class org.apache.commons.math3.analysis.integration.gauss.<a href="./org/apache/commons/math3/analysis/integration/gauss/GaussIntegrator.html" title="class in org.apache.commons.math3.analysis.integration.gauss">GaussIntegrator</a></dt>
<dd>
<div class="block">Creates an integrator from the given <code>points</code> and <code>weights</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/gauss/GaussIntegrator.html#GaussIntegrator(org.apache.commons.math3.util.Pair)">GaussIntegrator(Pair&lt;double[], double[]&gt;)</a></span> - Constructor for class org.apache.commons.math3.analysis.integration.gauss.<a href="./org/apache/commons/math3/analysis/integration/gauss/GaussIntegrator.html" title="class in org.apache.commons.math3.analysis.integration.gauss">GaussIntegrator</a></dt>
<dd>
<div class="block">Creates an integrator from the given pair of points (first element of
 the pair) and weights (second element of the pair.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/integration/gauss/GaussIntegratorFactory.html" title="class in org.apache.commons.math3.analysis.integration.gauss"><span class="strong">GaussIntegratorFactory</span></a> - Class in <a href="./org/apache/commons/math3/analysis/integration/gauss/package-summary.html">org.apache.commons.math3.analysis.integration.gauss</a></dt>
<dd>
<div class="block">Class that provides different ways to compute the nodes and weights to be
 used by the <a href="./org/apache/commons/math3/analysis/integration/gauss/GaussIntegrator.html" title="class in org.apache.commons.math3.analysis.integration.gauss"><code>Gaussian integration rule</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/gauss/GaussIntegratorFactory.html#GaussIntegratorFactory()">GaussIntegratorFactory()</a></span> - Constructor for class org.apache.commons.math3.analysis.integration.gauss.<a href="./org/apache/commons/math3/analysis/integration/gauss/GaussIntegratorFactory.html" title="class in org.apache.commons.math3.analysis.integration.gauss">GaussIntegratorFactory</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/fitting/leastsquares/GaussNewtonOptimizer.html" title="class in org.apache.commons.math3.fitting.leastsquares"><span class="strong">GaussNewtonOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/fitting/leastsquares/package-summary.html">org.apache.commons.math3.fitting.leastsquares</a></dt>
<dd>
<div class="block">Gauss-Newton least-squares solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/GaussNewtonOptimizer.html#GaussNewtonOptimizer()">GaussNewtonOptimizer()</a></span> - Constructor for class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/GaussNewtonOptimizer.html" title="class in org.apache.commons.math3.fitting.leastsquares">GaussNewtonOptimizer</a></dt>
<dd>
<div class="block">Creates a Gauss Newton optimizer.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/GaussNewtonOptimizer.html#GaussNewtonOptimizer(org.apache.commons.math3.fitting.leastsquares.GaussNewtonOptimizer.Decomposition)">GaussNewtonOptimizer(GaussNewtonOptimizer.Decomposition)</a></span> - Constructor for class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/GaussNewtonOptimizer.html" title="class in org.apache.commons.math3.fitting.leastsquares">GaussNewtonOptimizer</a></dt>
<dd>
<div class="block">Create a Gauss Newton optimizer that uses the given decomposition algorithm to
 solve the normal equations.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/GaussNewtonOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector.jacobian"><span class="strong">GaussNewtonOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/package-summary.html">org.apache.commons.math3.optim.nonlinear.vector.jacobian</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>All classes and interfaces in this package are deprecated.
 The optimizers that were provided here were moved to the
 <a href="./org/apache/commons/math3/fitting/leastsquares/package-summary.html"><code>org.apache.commons.math3.fitting.leastsquares</code></a> package
 (cf. MATH-1008).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/GaussNewtonOptimizer.html#GaussNewtonOptimizer(org.apache.commons.math3.optim.ConvergenceChecker)">GaussNewtonOptimizer(ConvergenceChecker&lt;PointVectorValuePair&gt;)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.vector.jacobian.<a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/GaussNewtonOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector.jacobian">GaussNewtonOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Simple constructor with default settings.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/GaussNewtonOptimizer.html#GaussNewtonOptimizer(boolean, org.apache.commons.math3.optim.ConvergenceChecker)">GaussNewtonOptimizer(boolean, ConvergenceChecker&lt;PointVectorValuePair&gt;)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.vector.jacobian.<a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/GaussNewtonOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector.jacobian">GaussNewtonOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optimization/general/GaussNewtonOptimizer.html" title="class in org.apache.commons.math3.optimization.general"><span class="strong">GaussNewtonOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optimization/general/package-summary.html">org.apache.commons.math3.optimization.general</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/GaussNewtonOptimizer.html#GaussNewtonOptimizer()">GaussNewtonOptimizer()</a></span> - Constructor for class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/GaussNewtonOptimizer.html" title="class in org.apache.commons.math3.optimization.general">GaussNewtonOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>See <a href="./org/apache/commons/math3/optimization/SimpleVectorValueChecker.html#SimpleVectorValueChecker()"><code>SimpleVectorValueChecker.SimpleVectorValueChecker()</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/GaussNewtonOptimizer.html#GaussNewtonOptimizer(org.apache.commons.math3.optimization.ConvergenceChecker)">GaussNewtonOptimizer(ConvergenceChecker&lt;PointVectorValuePair&gt;)</a></span> - Constructor for class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/GaussNewtonOptimizer.html" title="class in org.apache.commons.math3.optimization.general">GaussNewtonOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Simple constructor with default settings.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/GaussNewtonOptimizer.html#GaussNewtonOptimizer(boolean)">GaussNewtonOptimizer(boolean)</a></span> - Constructor for class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/GaussNewtonOptimizer.html" title="class in org.apache.commons.math3.optimization.general">GaussNewtonOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>See <a href="./org/apache/commons/math3/optimization/SimpleVectorValueChecker.html#SimpleVectorValueChecker()"><code>SimpleVectorValueChecker.SimpleVectorValueChecker()</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/GaussNewtonOptimizer.html#GaussNewtonOptimizer(boolean, org.apache.commons.math3.optimization.ConvergenceChecker)">GaussNewtonOptimizer(boolean, ConvergenceChecker&lt;PointVectorValuePair&gt;)</a></span> - Constructor for class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/GaussNewtonOptimizer.html" title="class in org.apache.commons.math3.optimization.general">GaussNewtonOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/fitting/leastsquares/GaussNewtonOptimizer.Decomposition.html" title="enum in org.apache.commons.math3.fitting.leastsquares"><span class="strong">GaussNewtonOptimizer.Decomposition</span></a> - Enum in <a href="./org/apache/commons/math3/fitting/leastsquares/package-summary.html">org.apache.commons.math3.fitting.leastsquares</a></dt>
<dd>
<div class="block">The decomposition algorithm to use to solve the normal equations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ArithmeticUtils.html#gcd(int, int)">gcd(int, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ArithmeticUtils.html" title="class in org.apache.commons.math3.util">ArithmeticUtils</a></dt>
<dd>
<div class="block">Computes the greatest common divisor of the absolute value of two
 numbers, using a modified version of the "binary gcd" method.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ArithmeticUtils.html#gcd(long, long)">gcd(long, long)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ArithmeticUtils.html" title="class in org.apache.commons.math3.util">ArithmeticUtils</a></dt>
<dd>
<div class="block">
 Gets the greatest common divisor of the absolute value of two numbers,
 using the "binary gcd" method which avoids division and modulo
 operations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/GTest.html#gDataSetsComparison(long[], long[])">gDataSetsComparison(long[], long[])</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/GTest.html" title="class in org.apache.commons.math3.stat.inference">GTest</a></dt>
<dd>
<div class="block">Computes a G (Log-Likelihood Ratio) two sample test statistic for
 independence comparing frequency counts in
 <code>observed1</code> and <code>observed2</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#gDataSetsComparison(long[], long[])">gDataSetsComparison(long[], long[])</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/hull/ConvexHullGenerator2D.html#generate(java.util.Collection)">generate(Collection&lt;Vector2D&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.euclidean.twod.hull.<a href="./org/apache/commons/math3/geometry/euclidean/twod/hull/ConvexHullGenerator2D.html" title="interface in org.apache.commons.math3.geometry.euclidean.twod.hull">ConvexHullGenerator2D</a></dt>
<dd>
<div class="block">Builds the convex hull from the set of input points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/hull/ConvexHullGenerator.html#generate(java.util.Collection)">generate(Collection&lt;P&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.hull.<a href="./org/apache/commons/math3/geometry/hull/ConvexHullGenerator.html" title="interface in org.apache.commons.math3.geometry.hull">ConvexHullGenerator</a></dt>
<dd>
<div class="block">Builds the convex hull from the set of input points.</div>
</dd>
<dt><a href="./org/apache/commons/math3/genetics/GeneticAlgorithm.html" title="class in org.apache.commons.math3.genetics"><span class="strong">GeneticAlgorithm</span></a> - Class in <a href="./org/apache/commons/math3/genetics/package-summary.html">org.apache.commons.math3.genetics</a></dt>
<dd>
<div class="block">Implementation of a genetic algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/GeneticAlgorithm.html#GeneticAlgorithm(org.apache.commons.math3.genetics.CrossoverPolicy, double, org.apache.commons.math3.genetics.MutationPolicy, double, org.apache.commons.math3.genetics.SelectionPolicy)">GeneticAlgorithm(CrossoverPolicy, double, MutationPolicy, double, SelectionPolicy)</a></span> - Constructor for class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/GeneticAlgorithm.html" title="class in org.apache.commons.math3.genetics">GeneticAlgorithm</a></dt>
<dd>
<div class="block">Create a new genetic algorithm.</div>
</dd>
<dt><a href="./org/apache/commons/math3/distribution/GeometricDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">GeometricDistribution</span></a> - Class in <a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a></dt>
<dd>
<div class="block">Implementation of the geometric distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/GeometricDistribution.html#GeometricDistribution(double)">GeometricDistribution(double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/GeometricDistribution.html" title="class in org.apache.commons.math3.distribution">GeometricDistribution</a></dt>
<dd>
<div class="block">Create a geometric distribution with the given probability of success.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/GeometricDistribution.html#GeometricDistribution(org.apache.commons.math3.random.RandomGenerator, double)">GeometricDistribution(RandomGenerator, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/GeometricDistribution.html" title="class in org.apache.commons.math3.distribution">GeometricDistribution</a></dt>
<dd>
<div class="block">Creates a geometric distribution.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/moment/GeometricMean.html" title="class in org.apache.commons.math3.stat.descriptive.moment"><span class="strong">GeometricMean</span></a> - Class in <a href="./org/apache/commons/math3/stat/descriptive/moment/package-summary.html">org.apache.commons.math3.stat.descriptive.moment</a></dt>
<dd>
<div class="block">Returns the <a href="http://www.xycoon.com/geometric_mean.htm">
 geometric mean </a> of the available values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/GeometricMean.html#GeometricMean()">GeometricMean()</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/GeometricMean.html" title="class in org.apache.commons.math3.stat.descriptive.moment">GeometricMean</a></dt>
<dd>
<div class="block">Create a GeometricMean instance</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/GeometricMean.html#GeometricMean(org.apache.commons.math3.stat.descriptive.moment.GeometricMean)">GeometricMean(GeometricMean)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/GeometricMean.html" title="class in org.apache.commons.math3.stat.descriptive.moment">GeometricMean</a></dt>
<dd>
<div class="block">Copy constructor, creates a new <code>GeometricMean</code> identical
 to the <code>original</code></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/GeometricMean.html#GeometricMean(org.apache.commons.math3.stat.descriptive.summary.SumOfLogs)">GeometricMean(SumOfLogs)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/GeometricMean.html" title="class in org.apache.commons.math3.stat.descriptive.moment">GeometricMean</a></dt>
<dd>
<div class="block">Create a GeometricMean instance using the given SumOfLogs instance</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/StatUtils.html#geometricMean(double[])">geometricMean(double[])</a></span> - Static method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/StatUtils.html" title="class in org.apache.commons.math3.stat">StatUtils</a></dt>
<dd>
<div class="block">Returns the geometric mean of the entries in the input array, or
 <code>Double.NaN</code> if the array is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/StatUtils.html#geometricMean(double[], int, int)">geometricMean(double[], int, int)</a></span> - Static method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/StatUtils.html" title="class in org.apache.commons.math3.stat">StatUtils</a></dt>
<dd>
<div class="block">Returns the geometric mean of the entries in the specified portion of
 the input array, or <code>Double.NaN</code> if the designated subarray
 is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.html#get(int)">get(int)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.html" title="class in org.apache.commons.math3.util">OpenIntToDoubleHashMap</a></dt>
<dd>
<div class="block">Get the stored value associated with the given key</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.html#get(int)">get(int)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.html" title="class in org.apache.commons.math3.util">OpenIntToFieldHashMap</a></dt>
<dd>
<div class="block">Get the stored value associated with the given key</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ContinuedFraction.html#getA(int, double)">getA(int, double)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ContinuedFraction.html" title="class in org.apache.commons.math3.util">ContinuedFraction</a></dt>
<dd>
<div class="block">Access the n-th a coefficient of the continued fraction.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/RotationOrder.html#getA1()">getA1()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/RotationOrder.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">RotationOrder</a></dt>
<dd>
<div class="block">Get the axis of the first rotation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/RotationOrder.html#getA2()">getA2()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/RotationOrder.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">RotationOrder</a></dt>
<dd>
<div class="block">Get the axis of the second rotation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/RotationOrder.html#getA3()">getA3()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/RotationOrder.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">RotationOrder</a></dt>
<dd>
<div class="block">Get the axis of the second rotation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html#getAbscissa(org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">getAbscissa(Vector3D)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Line</a></dt>
<dd>
<div class="block">Get the abscissa of a point with respect to the line.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html#getAbsoluteAccuracy()">getAbsoluteAccuracy()</a></span> - Method in class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">BaseAbstractUnivariateIntegrator</a></dt>
<dd>
<div class="block">Get the actual absolute accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/UnivariateIntegrator.html#getAbsoluteAccuracy()">getAbsoluteAccuracy()</a></span> - Method in interface org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/UnivariateIntegrator.html" title="interface in org.apache.commons.math3.analysis.integration">UnivariateIntegrator</a></dt>
<dd>
<div class="block">Get the actual absolute accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html#getAbsoluteAccuracy()">getAbsoluteAccuracy()</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BaseAbstractUnivariateSolver</a></dt>
<dd>
<div class="block">Get the absolute accuracy of the solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseUnivariateSolver.html#getAbsoluteAccuracy()">getAbsoluteAccuracy()</a></span> - Method in interface org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseUnivariateSolver.html" title="interface in org.apache.commons.math3.analysis.solvers">BaseUnivariateSolver</a></dt>
<dd>
<div class="block">Get the absolute accuracy of the solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/BracketingNthOrderBrentSolverDFP.html#getAbsoluteAccuracy()">getAbsoluteAccuracy()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/BracketingNthOrderBrentSolverDFP.html" title="class in org.apache.commons.math3.dfp">BracketingNthOrderBrentSolverDFP</a></dt>
<dd>
<div class="block">Get the absolute accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/AbstractConvergenceChecker.html#getAbsoluteThreshold()">getAbsoluteThreshold()</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/AbstractConvergenceChecker.html" title="class in org.apache.commons.math3.optim">AbstractConvergenceChecker</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/AbstractConvergenceChecker.html#getAbsoluteThreshold()">getAbsoluteThreshold()</a></span> - Method in class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/AbstractConvergenceChecker.html" title="class in org.apache.commons.math3.optimization">AbstractConvergenceChecker</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/RegressionResults.html#getAdjustedRSquared()">getAdjustedRSquared()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/RegressionResults.html" title="class in org.apache.commons.math3.stat.regression">RegressionResults</a></dt>
<dd>
<div class="block">Returns the adjusted R-squared statistic, defined by the formula</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/interval/IntervalUtils.html#getAgrestiCoullInterval(int, int, double)">getAgrestiCoullInterval(int, int, double)</a></span> - Static method in class org.apache.commons.math3.stat.interval.<a href="./org/apache/commons/math3/stat/interval/IntervalUtils.html" title="class in org.apache.commons.math3.stat.interval">IntervalUtils</a></dt>
<dd>
<div class="block">Create an Agresti-Coull binomial confidence interval for the true
 probability of success of an unknown binomial distribution with the given
 observed number of trials, successes and confidence level.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#getAllDerivatives()">getAllDerivatives()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Get all partial derivatives.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/BetaDistribution.html#getAlpha()">getAlpha()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/BetaDistribution.html" title="class in org.apache.commons.math3.distribution">BetaDistribution</a></dt>
<dd>
<div class="block">Access the first shape parameter, <code>alpha</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/GammaDistribution.html#getAlpha()">getAlpha()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/GammaDistribution.html" title="class in org.apache.commons.math3.distribution">GammaDistribution</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of version 3.1, <a href="./org/apache/commons/math3/distribution/GammaDistribution.html#getShape()"><code>GammaDistribution.getShape()</code></a> should be preferred.
 This method will be removed in version 4.0.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#getAlpha()">getAlpha()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Get the azimuth of the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#getAlpha()">getAlpha()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Get the azimuth of the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/S1Point.html#getAlpha()">getAlpha()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/S1Point.html" title="class in org.apache.commons.math3.geometry.spherical.oned">S1Point</a></dt>
<dd>
<div class="block">Get the azimuthal angle \( \alpha \).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html#getAngle()">getAngle()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldRotation</a></dt>
<dd>
<div class="block">Get the angle of the rotation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html#getAngle()">getAngle()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Rotation</a></dt>
<dd>
<div class="block">Get the angle of the rotation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#getAngle()">getAngle()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Line</a></dt>
<dd>
<div class="block">Get the angle of the line.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html#getAngles(org.apache.commons.math3.geometry.euclidean.threed.RotationOrder)">getAngles(RotationOrder)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldRotation</a></dt>
<dd>
<div class="block">Get the Cardan or Euler angles corresponding to the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html#getAngles(org.apache.commons.math3.geometry.euclidean.threed.RotationOrder)">getAngles(RotationOrder)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Rotation</a></dt>
<dd>
<div class="block">Get the Cardan or Euler angles corresponding to the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#getArgument()">getArgument()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Compute the argument of this complex number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MathIllegalNumberException.html#getArgument()">getArgument()</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MathIllegalNumberException.html" title="class in org.apache.commons.math3.exception">MathIllegalNumberException</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/TournamentSelection.html#getArity()">getArity()</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/TournamentSelection.html" title="class in org.apache.commons.math3.genetics">TournamentSelection</a></dt>
<dd>
<div class="block">Gets the arity (number of chromosomes drawn to the tournament).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#getArrayRef()">getArrayRef()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block">Provides <em>direct</em> access to the internal storage array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html#getAttribute()">getAttribute()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html" title="class in org.apache.commons.math3.geometry.partitioning">BSPTree</a></dt>
<dd>
<div class="block">Get the attribute associated with the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/ComplexFormat.html#getAvailableLocales()">getAvailableLocales()</a></span> - Static method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/ComplexFormat.html" title="class in org.apache.commons.math3.complex">ComplexFormat</a></dt>
<dd>
<div class="block">Get the set of locales for which complex formats are available.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFractionFormat.html#getAvailableLocales()">getAvailableLocales()</a></span> - Static method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFractionFormat.html" title="class in org.apache.commons.math3.fraction">BigFractionFormat</a></dt>
<dd>
<div class="block">Get the set of locales for which complex formats are available.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/FractionFormat.html#getAvailableLocales()">getAvailableLocales()</a></span> - Static method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/FractionFormat.html" title="class in org.apache.commons.math3.fraction">FractionFormat</a></dt>
<dd>
<div class="block">Get the set of locales for which complex formats are available.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/VectorFormat.html#getAvailableLocales()">getAvailableLocales()</a></span> - Static method in class org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/VectorFormat.html" title="class in org.apache.commons.math3.geometry">VectorFormat</a></dt>
<dd>
<div class="block">Get the set of locales for which point/vector formats are available.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrixFormat.html#getAvailableLocales()">getAvailableLocales()</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrixFormat.html" title="class in org.apache.commons.math3.linear">RealMatrixFormat</a></dt>
<dd>
<div class="block">Get the set of locales for which real vectors formats are available.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVectorFormat.html#getAvailableLocales()">getAvailableLocales()</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVectorFormat.html" title="class in org.apache.commons.math3.linear">RealVectorFormat</a></dt>
<dd>
<div class="block">Get the set of locales for which real vectors formats are available.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html#getAxis()">getAxis()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldRotation</a></dt>
<dd>
<div class="block">Get the normalized axis of the rotation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html#getAxis()">getAxis()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Rotation</a></dt>
<dd>
<div class="block">Get the normalized axis of the rotation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ContinuedFraction.html#getB(int, double)">getB(int, double)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ContinuedFraction.html" title="class in org.apache.commons.math3.util">ContinuedFraction</a></dt>
<dd>
<div class="block">Access the n-th b coefficient of the continued fraction.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Interval.html#getBarycenter()">getBarycenter()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Interval.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Interval</a></dt>
<dd>
<div class="block">Get the barycenter of the interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html#getBarycenter()">getBarycenter()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractRegion</a></dt>
<dd>
<div class="block">Get the barycenter of the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/Region.html#getBarycenter()">getBarycenter()</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/Region.html" title="interface in org.apache.commons.math3.geometry.partitioning">Region</a></dt>
<dd>
<div class="block">Get the barycenter of the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/Arc.html#getBarycenter()">getBarycenter()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/Arc.html" title="class in org.apache.commons.math3.geometry.spherical.oned">Arc</a></dt>
<dd>
<div class="block">Get the barycenter of the arc.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/BetaDistribution.html#getBeta()">getBeta()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/BetaDistribution.html" title="class in org.apache.commons.math3.distribution">BetaDistribution</a></dt>
<dd>
<div class="block">Access the second shape parameter, <code>beta</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/GammaDistribution.html#getBeta()">getBeta()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/GammaDistribution.html" title="class in org.apache.commons.math3.distribution">GammaDistribution</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of version 3.1, <a href="./org/apache/commons/math3/distribution/GammaDistribution.html#getScale()"><code>GammaDistribution.getScale()</code></a> should be preferred.
 This method will be removed in version 4.0.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#getBinCount()">getBinCount()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random">EmpiricalDistribution</a></dt>
<dd>
<div class="block">Returns the number of bins.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#getBinStats()">getBinStats()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random">EmpiricalDistribution</a></dt>
<dd>
<div class="block">Returns a List of <a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive"><code>SummaryStatistics</code></a> instances containing
 statistics describing the values in each of the bins.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/SphericalPolygonsSet.html#getBoundaryLoops()">getBoundaryLoops()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/SphericalPolygonsSet.html" title="class in org.apache.commons.math3.geometry.spherical.twod">SphericalPolygonsSet</a></dt>
<dd>
<div class="block">Get the boundary loops of the polygon.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html#getBoundarySize()">getBoundarySize()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractRegion</a></dt>
<dd>
<div class="block">Get the size of the boundary.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/Region.html#getBoundarySize()">getBoundarySize()</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/Region.html" title="interface in org.apache.commons.math3.geometry.partitioning">Region</a></dt>
<dd>
<div class="block">Get the size of the boundary.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/NumberIsTooLargeException.html#getBoundIsAllowed()">getBoundIsAllowed()</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/NumberIsTooLargeException.html" title="class in org.apache.commons.math3.exception">NumberIsTooLargeException</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/NumberIsTooSmallException.html#getBoundIsAllowed()">getBoundIsAllowed()</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/NumberIsTooSmallException.html" title="class in org.apache.commons.math3.exception">NumberIsTooSmallException</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.BracketingStep.html#getBracketingStep()">getBracketingStep()</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.gradient.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.BracketingStep.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.gradient">NonLinearConjugateGradientOptimizer.BracketingStep</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Gets the initial step.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#getCapacity()">getCapacity()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block">Gets the currently allocated size of the internal data structure used
 for storing elements.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/SphericalCoordinates.html#getCartesian()">getCartesian()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/SphericalCoordinates.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">SphericalCoordinates</a></dt>
<dd>
<div class="block">Get the Cartesian coordinates.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html#getCell(org.apache.commons.math3.geometry.Vector)">getCell(Vector&lt;S&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html" title="class in org.apache.commons.math3.geometry.partitioning">BSPTree</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.3, replaced with <a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html#getCell(org.apache.commons.math3.geometry.Point, double)"><code>BSPTree.getCell(Point, double)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html#getCell(org.apache.commons.math3.geometry.Point, double)">getCell(Point&lt;S&gt;, double)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html" title="class in org.apache.commons.math3.geometry.partitioning">BSPTree</a></dt>
<dd>
<div class="block">Get the cell to which a point belongs.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/enclosing/EnclosingBall.html#getCenter()">getCenter()</a></span> - Method in class org.apache.commons.math3.geometry.enclosing.<a href="./org/apache/commons/math3/geometry/enclosing/EnclosingBall.html" title="class in org.apache.commons.math3.geometry.enclosing">EnclosingBall</a></dt>
<dd>
<div class="block">Get the center of the ball.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/CentroidCluster.html#getCenter()">getCenter()</a></span> - Method in class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/CentroidCluster.html" title="class in org.apache.commons.math3.ml.clustering">CentroidCluster</a></dt>
<dd>
<div class="block">Get the point chosen to be the center of this cluster.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/clustering/Cluster.html#getCenter()">getCenter()</a></span> - Method in class org.apache.commons.math3.stat.clustering.<a href="./org/apache/commons/math3/stat/clustering/Cluster.html" title="class in org.apache.commons.math3.stat.clustering">Cluster</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the point chosen to be the center of this cluster.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionNewtonForm.html#getCenters()">getCenters()</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionNewtonForm.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunctionNewtonForm</a></dt>
<dd>
<div class="block">Returns a copy of the centers array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ConjugateGradient.html#getCheck()">getCheck()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ConjugateGradient.html" title="class in org.apache.commons.math3.linear">ConjugateGradient</a></dt>
<dd>
<div class="block">Returns <code>true</code> if positive-definiteness should be checked for both
 matrix and preconditioner.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SymmLQ.html#getCheck()">getCheck()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SymmLQ.html" title="class in org.apache.commons.math3.linear">SymmLQ</a></dt>
<dd>
<div class="block">Returns <code>true</code> if symmetry of the matrix, and symmetry as well as
 positive definiteness of the preconditioner should be checked.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/AbstractLeastSquaresOptimizer.html#getChiSquare()">getChiSquare()</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.vector.jacobian.<a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector.jacobian">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get a Chi-Square-like value assuming the N residuals follow N
 distinct normal distributions centered on 0 and whose variances are
 the reciprocal of the weights.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#getChiSquare()">getChiSquare()</a></span> - Method in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get a Chi-Square-like value assuming the N residuals follow N
 distinct normal distributions centered on 0 and whose variances are
 the reciprocal of the weights.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/ListPopulation.html#getChromosomeList()">getChromosomeList()</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/ListPopulation.html" title="class in org.apache.commons.math3.genetics">ListPopulation</a></dt>
<dd>
<div class="block">Access the list of chromosomes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/ListPopulation.html#getChromosomes()">getChromosomes()</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/ListPopulation.html" title="class in org.apache.commons.math3.genetics">ListPopulation</a></dt>
<dd>
<div class="block">Returns an unmodifiable list of the chromosomes in this population.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/Edge.html#getCircle()">getCircle()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/Edge.html" title="class in org.apache.commons.math3.geometry.spherical.twod">Edge</a></dt>
<dd>
<div class="block">Get the circle supporting this edge.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/interval/IntervalUtils.html#getClopperPearsonInterval(int, int, double)">getClopperPearsonInterval(int, int, double)</a></span> - Static method in class org.apache.commons.math3.stat.interval.<a href="./org/apache/commons/math3/stat/interval/IntervalUtils.html" title="class in org.apache.commons.math3.stat.interval">IntervalUtils</a></dt>
<dd>
<div class="block">Create a Clopper-Pearson binomial confidence interval for the true
 probability of success of an unknown binomial distribution with the given
 observed number of trials, successes and confidence level.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html#getCloseCuts(org.apache.commons.math3.geometry.Point, double)">getCloseCuts(Point&lt;S&gt;, double)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html" title="class in org.apache.commons.math3.geometry.partitioning">BSPTree</a></dt>
<dd>
<div class="block">Get the cells whose cut sub-hyperplanes are close to the point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/MultiKMeansPlusPlusClusterer.html#getClusterer()">getClusterer()</a></span> - Method in class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/MultiKMeansPlusPlusClusterer.html" title="class in org.apache.commons.math3.ml.clustering">MultiKMeansPlusPlusClusterer</a></dt>
<dd>
<div class="block">Returns the embedded k-means clusterer used by this instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/MultiKMeansPlusPlusClusterer.html#getClusterEvaluator()">getClusterEvaluator()</a></span> - Method in class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/MultiKMeansPlusPlusClusterer.html" title="class in org.apache.commons.math3.ml.clustering">MultiKMeansPlusPlusClusterer</a></dt>
<dd>
<div class="block">Returns the <a href="./org/apache/commons/math3/ml/clustering/evaluation/ClusterEvaluator.html" title="class in org.apache.commons.math3.ml.clustering.evaluation"><code>ClusterEvaluator</code></a> used to determine the "best" clustering.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/FuzzyKMeansClusterer.html#getClusters()">getClusters()</a></span> - Method in class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/FuzzyKMeansClusterer.html" title="class in org.apache.commons.math3.ml.clustering">FuzzyKMeansClusterer</a></dt>
<dd>
<div class="block">Returns the list of clusters resulting from the last call to <a href="./org/apache/commons/math3/ml/clustering/FuzzyKMeansClusterer.html#cluster(java.util.Collection)"><code>FuzzyKMeansClusterer.cluster(Collection)</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.html#getCoefficients()">getCoefficients()</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunction</a></dt>
<dd>
<div class="block">Returns a copy of the coefficients array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionLagrangeForm.html#getCoefficients()">getCoefficients()</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionLagrangeForm.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunctionLagrangeForm</a></dt>
<dd>
<div class="block">Returns a copy of the coefficients array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionNewtonForm.html#getCoefficients()">getCoefficients()</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionNewtonForm.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunctionNewtonForm</a></dt>
<dd>
<div class="block">Returns a copy of the coefficients array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/AbstractPolynomialSolver.html#getCoefficients()">getCoefficients()</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/AbstractPolynomialSolver.html" title="class in org.apache.commons.math3.analysis.solvers">AbstractPolynomialSolver</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/LinearConstraint.html#getCoefficients()">getCoefficients()</a></span> - Method in class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/LinearConstraint.html" title="class in org.apache.commons.math3.optim.linear">LinearConstraint</a></dt>
<dd>
<div class="block">Gets the coefficients of the constraint (left hand side).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/LinearObjectiveFunction.html#getCoefficients()">getCoefficients()</a></span> - Method in class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/LinearObjectiveFunction.html" title="class in org.apache.commons.math3.optim.linear">LinearObjectiveFunction</a></dt>
<dd>
<div class="block">Gets the coefficients of the linear equation being optimized.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/LinearConstraint.html#getCoefficients()">getCoefficients()</a></span> - Method in class org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/LinearConstraint.html" title="class in org.apache.commons.math3.optimization.linear">LinearConstraint</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the coefficients of the constraint (left hand side).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/LinearObjectiveFunction.html#getCoefficients()">getCoefficients()</a></span> - Method in class org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/LinearObjectiveFunction.html" title="class in org.apache.commons.math3.optimization.linear">LinearObjectiveFunction</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the coefficients of the linear equation being optimized.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#getColumn(int)">getColumn(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Get the entries in column number <code>col</code> as an array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#getColumn(int)">getColumn(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Get the entries at the given column index as an array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#getColumn(int)">getColumn(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Get the entries in column number <code>col</code> as an array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#getColumn(int)">getColumn(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Get the entries at the given column index as an array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#getColumn(int)">getColumn(int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Get the entries in column number <code>col</code> as an array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/NonPositiveDefiniteMatrixException.html#getColumn()">getColumn()</a></span> - Method in exception org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/NonPositiveDefiniteMatrixException.html" title="class in org.apache.commons.math3.linear">NonPositiveDefiniteMatrixException</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/NonSymmetricMatrixException.html#getColumn()">getColumn()</a></span> - Method in exception org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/NonSymmetricMatrixException.html" title="class in org.apache.commons.math3.linear">NonSymmetricMatrixException</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#getColumn(int)">getColumn(int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Get the entries at the given column index as an array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#getColumnDimension()">getColumnDimension()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Returns the number of columns in the matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#getColumnDimension()">getColumnDimension()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Returns the number of columns of this matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AnyMatrix.html#getColumnDimension()">getColumnDimension()</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AnyMatrix.html" title="interface in org.apache.commons.math3.linear">AnyMatrix</a></dt>
<dd>
<div class="block">Returns the number of columns in the matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html#getColumnDimension()">getColumnDimension()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowFieldMatrix</a></dt>
<dd>
<div class="block">Returns the number of columns in the matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html#getColumnDimension()">getColumnDimension()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowRealMatrix</a></dt>
<dd>
<div class="block">Returns the number of columns of this matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#getColumnDimension()">getColumnDimension()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Returns the number of columns in the matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#getColumnDimension()">getColumnDimension()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Returns the number of columns of this matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DiagonalMatrix.html#getColumnDimension()">getColumnDimension()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DiagonalMatrix.html" title="class in org.apache.commons.math3.linear">DiagonalMatrix</a></dt>
<dd>
<div class="block">Returns the number of columns of this matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/JacobiPreconditioner.html#getColumnDimension()">getColumnDimension()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/JacobiPreconditioner.html" title="class in org.apache.commons.math3.linear">JacobiPreconditioner</a></dt>
<dd>
<div class="block">Returns the dimension of the domain of this operator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealMatrix.html#getColumnDimension()">getColumnDimension()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealMatrix.html" title="class in org.apache.commons.math3.linear">OpenMapRealMatrix</a></dt>
<dd>
<div class="block">Returns the number of columns of this matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealLinearOperator.html#getColumnDimension()">getColumnDimension()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealLinearOperator.html" title="class in org.apache.commons.math3.linear">RealLinearOperator</a></dt>
<dd>
<div class="block">Returns the dimension of the domain of this operator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldMatrix.html#getColumnDimension()">getColumnDimension()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldMatrix.html" title="class in org.apache.commons.math3.linear">SparseFieldMatrix</a></dt>
<dd>
<div class="block">Returns the number of columns in the matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#getColumnMatrix(int)">getColumnMatrix(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Get the entries in column number <code>column</code>
 as a column matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#getColumnMatrix(int)">getColumnMatrix(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Get the entries at the given column index as a column matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#getColumnMatrix(int)">getColumnMatrix(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Get the entries in column number <code>column</code>
 as a column matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#getColumnMatrix(int)">getColumnMatrix(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Get the entries at the given column index as a column matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#getColumnMatrix(int)">getColumnMatrix(int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Get the entries in column number <code>column</code>
 as a column matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#getColumnMatrix(int)">getColumnMatrix(int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Get the entries at the given column index as a column matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrixFormat.html#getColumnSeparator()">getColumnSeparator()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrixFormat.html" title="class in org.apache.commons.math3.linear">RealMatrixFormat</a></dt>
<dd>
<div class="block">Get the format separator between components.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#getColumnVector(int)">getColumnVector(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Returns the entries in column number <code>column</code>
 as a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#getColumnVector(int)">getColumnVector(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Get the entries at the given column index as a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#getColumnVector(int)">getColumnVector(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Returns the entries in column number <code>column</code>
 as a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#getColumnVector(int)">getColumnVector(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Get the entries at the given column index as a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#getColumnVector(int)">getColumnVector(int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Returns the entries in column number <code>column</code>
 as a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#getColumnVector(int)">getColumnVector(int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Get the entries at the given column index as a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#getCompiler(int, int)">getCompiler(int, int)</a></span> - Static method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Get the compiler for number of free parameters and order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/RegionFactory.html#getComplement(org.apache.commons.math3.geometry.partitioning.Region)">getComplement(Region&lt;S&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/RegionFactory.html" title="class in org.apache.commons.math3.geometry.partitioning">RegionFactory</a></dt>
<dd>
<div class="block">Get the complement of the region (exchanged interior/exterior).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html#getCompleteState()">getCompleteState()</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html" title="class in org.apache.commons.math3.ode">ExpandableStatefulODE</a></dt>
<dd>
<div class="block">Get the complete current state.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/MixtureMultivariateRealDistribution.html#getComponents()">getComponents()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/MixtureMultivariateRealDistribution.html" title="class in org.apache.commons.math3.distribution">MixtureMultivariateRealDistribution</a></dt>
<dd>
<div class="block">Gets the distributions that make up the mixture model.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/utilities/OrderedTuple.html#getComponents()">getComponents()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.utilities.<a href="./org/apache/commons/math3/geometry/partitioning/utilities/OrderedTuple.html" title="class in org.apache.commons.math3.geometry.partitioning.utilities">OrderedTuple</a></dt>
<dd>
<div class="block">Get the components array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SingularValueDecomposition.html#getConditionNumber()">getConditionNumber()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SingularValueDecomposition.html" title="class in org.apache.commons.math3.linear">SingularValueDecomposition</a></dt>
<dd>
<div class="block">Return the condition number of the matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/interval/ConfidenceInterval.html#getConfidenceLevel()">getConfidenceLevel()</a></span> - Method in class org.apache.commons.math3.stat.interval.<a href="./org/apache/commons/math3/stat/interval/ConfidenceInterval.html" title="class in org.apache.commons.math3.stat.interval">ConfidenceInterval</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Quaternion.html#getConjugate()">getConjugate()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex">Quaternion</a></dt>
<dd>
<div class="block">Returns the conjugate quaternion of the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/LinearObjectiveFunction.html#getConstantTerm()">getConstantTerm()</a></span> - Method in class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/LinearObjectiveFunction.html" title="class in org.apache.commons.math3.optim.linear">LinearObjectiveFunction</a></dt>
<dd>
<div class="block">Gets the constant of the linear equation being optimized.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/LinearObjectiveFunction.html#getConstantTerm()">getConstantTerm()</a></span> - Method in class org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/LinearObjectiveFunction.html" title="class in org.apache.commons.math3.optimization.linear">LinearObjectiveFunction</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the constant of the linear equation being optimized.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/LinearConstraintSet.html#getConstraints()">getConstraints()</a></span> - Method in class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/LinearConstraintSet.html" title="class in org.apache.commons.math3.optim.linear">LinearConstraintSet</a></dt>
<dd>
<div class="block">Gets the set of linear constraints.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/LinearOptimizer.html#getConstraints()">getConstraints()</a></span> - Method in class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/LinearOptimizer.html" title="class in org.apache.commons.math3.optim.linear">LinearOptimizer</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/AbstractLinearOptimizer.html#getConstraints()">getConstraints()</a></span> - Method in class org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/AbstractLinearOptimizer.html" title="class in org.apache.commons.math3.optimization.linear">AbstractLinearOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MathArithmeticException.html#getContext()">getContext()</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MathArithmeticException.html" title="class in org.apache.commons.math3.exception">MathArithmeticException</a></dt>
<dd>
<div class="block">Gets a reference to the "rich context" data structure that allows to
 customize error messages and store key, value pairs in exceptions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MathIllegalArgumentException.html#getContext()">getContext()</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MathIllegalArgumentException.html" title="class in org.apache.commons.math3.exception">MathIllegalArgumentException</a></dt>
<dd>
<div class="block">Gets a reference to the "rich context" data structure that allows to
 customize error messages and store key, value pairs in exceptions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MathIllegalStateException.html#getContext()">getContext()</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MathIllegalStateException.html" title="class in org.apache.commons.math3.exception">MathIllegalStateException</a></dt>
<dd>
<div class="block">Gets a reference to the "rich context" data structure that allows to
 customize error messages and store key, value pairs in exceptions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MathRuntimeException.html#getContext()">getContext()</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MathRuntimeException.html" title="class in org.apache.commons.math3.exception">MathRuntimeException</a></dt>
<dd>
<div class="block">Gets a reference to the "rich context" data structure that allows to
 customize error messages and store key, value pairs in exceptions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MathUnsupportedOperationException.html#getContext()">getContext()</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MathUnsupportedOperationException.html" title="class in org.apache.commons.math3.exception">MathUnsupportedOperationException</a></dt>
<dd>
<div class="block">Gets a reference to the "rich context" data structure that allows to
 customize error messages and store key, value pairs in exceptions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/util/ExceptionContextProvider.html#getContext()">getContext()</a></span> - Method in interface org.apache.commons.math3.exception.util.<a href="./org/apache/commons/math3/exception/util/ExceptionContextProvider.html" title="interface in org.apache.commons.math3.exception.util">ExceptionContextProvider</a></dt>
<dd>
<div class="block">Gets a reference to the "rich context" data structure that allows to
 customize error messages and store key, value pairs in exceptions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#getContractionCriteria()">getContractionCriteria()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1. Please use <a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#getContractionCriterion()"><code>ResizableDoubleArray.getContractionCriterion()</code></a>
 instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#getContractionCriterion()">getContractionCriterion()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block">The contraction criterion defines when the internal array will contract
 to store only the number of elements in the element array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/filter/DefaultProcessModel.html#getControlMatrix()">getControlMatrix()</a></span> - Method in class org.apache.commons.math3.filter.<a href="./org/apache/commons/math3/filter/DefaultProcessModel.html" title="class in org.apache.commons.math3.filter">DefaultProcessModel</a></dt>
<dd>
<div class="block">Returns the control matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/filter/ProcessModel.html#getControlMatrix()">getControlMatrix()</a></span> - Method in interface org.apache.commons.math3.filter.<a href="./org/apache/commons/math3/filter/ProcessModel.html" title="interface in org.apache.commons.math3.filter">ProcessModel</a></dt>
<dd>
<div class="block">Returns the control matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/events/EventState.html#getConvergence()">getConvergence()</a></span> - Method in class org.apache.commons.math3.ode.events.<a href="./org/apache/commons/math3/ode/events/EventState.html" title="class in org.apache.commons.math3.ode.events">EventState</a></dt>
<dd>
<div class="block">Get the convergence threshold for event localization.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresAdapter.html#getConvergenceChecker()">getConvergenceChecker()</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresAdapter.html" title="class in org.apache.commons.math3.fitting.leastsquares">LeastSquaresAdapter</a></dt>
<dd>
<div class="block">Gets the convergence checker.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/AbstractOptimizationProblem.html#getConvergenceChecker()">getConvergenceChecker()</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/AbstractOptimizationProblem.html" title="class in org.apache.commons.math3.optim">AbstractOptimizationProblem</a></dt>
<dd>
<div class="block">Gets the convergence checker.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/BaseOptimizer.html#getConvergenceChecker()">getConvergenceChecker()</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/BaseOptimizer.html" title="class in org.apache.commons.math3.optim">BaseOptimizer</a></dt>
<dd>
<div class="block">Gets the convergence checker.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/OptimizationProblem.html#getConvergenceChecker()">getConvergenceChecker()</a></span> - Method in interface org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/OptimizationProblem.html" title="interface in org.apache.commons.math3.optim">OptimizationProblem</a></dt>
<dd>
<div class="block">Gets the convergence checker.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/BaseMultivariateMultiStartOptimizer.html#getConvergenceChecker()">getConvergenceChecker()</a></span> - Method in class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/BaseMultivariateMultiStartOptimizer.html" title="class in org.apache.commons.math3.optimization">BaseMultivariateMultiStartOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the convergence checker.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/BaseMultivariateVectorMultiStartOptimizer.html#getConvergenceChecker()">getConvergenceChecker()</a></span> - Method in class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/BaseMultivariateVectorMultiStartOptimizer.html" title="class in org.apache.commons.math3.optimization">BaseMultivariateVectorMultiStartOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the convergence checker.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/BaseOptimizer.html#getConvergenceChecker()">getConvergenceChecker()</a></span> - Method in interface org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/BaseOptimizer.html" title="interface in org.apache.commons.math3.optimization">BaseOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the convergence checker.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html#getConvergenceChecker()">getConvergenceChecker()</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the convergence checker.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html#getConvergenceChecker()">getConvergenceChecker()</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateVectorOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the convergence checker.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/BaseAbstractUnivariateOptimizer.html#getConvergenceChecker()">getConvergenceChecker()</a></span> - Method in class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/BaseAbstractUnivariateOptimizer.html" title="class in org.apache.commons.math3.optimization.univariate">BaseAbstractUnivariateOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the convergence checker.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/UnivariateMultiStartOptimizer.html#getConvergenceChecker()">getConvergenceChecker()</a></span> - Method in class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/UnivariateMultiStartOptimizer.html" title="class in org.apache.commons.math3.optimization.univariate">UnivariateMultiStartOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the convergence checker.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/KendallsCorrelation.html#getCorrelationMatrix()">getCorrelationMatrix()</a></span> - Method in class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/KendallsCorrelation.html" title="class in org.apache.commons.math3.stat.correlation">KendallsCorrelation</a></dt>
<dd>
<div class="block">Returns the correlation matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/PearsonsCorrelation.html#getCorrelationMatrix()">getCorrelationMatrix()</a></span> - Method in class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/PearsonsCorrelation.html" title="class in org.apache.commons.math3.stat.correlation">PearsonsCorrelation</a></dt>
<dd>
<div class="block">Returns the correlation matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/SpearmansCorrelation.html#getCorrelationMatrix()">getCorrelationMatrix()</a></span> - Method in class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/SpearmansCorrelation.html" title="class in org.apache.commons.math3.stat.correlation">SpearmansCorrelation</a></dt>
<dd>
<div class="block">Calculate the Spearman Rank Correlation Matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/PearsonsCorrelation.html#getCorrelationPValues()">getCorrelationPValues()</a></span> - Method in class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/PearsonsCorrelation.html" title="class in org.apache.commons.math3.stat.correlation">PearsonsCorrelation</a></dt>
<dd>
<div class="block">Returns a matrix of p-values associated with the (two-sided) null
 hypothesis that the corresponding correlation coefficient is zero.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/PearsonsCorrelation.html#getCorrelationStandardErrors()">getCorrelationStandardErrors()</a></span> - Method in class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/PearsonsCorrelation.html" title="class in org.apache.commons.math3.stat.correlation">PearsonsCorrelation</a></dt>
<dd>
<div class="block">Returns a matrix of standard errors associated with the estimates
 in the correlation matrix.<br/>
 <code>getCorrelationStandardErrors().getEntry(i,j)</code> is the standard
 error associated with <code>getCorrelationMatrix.getEntry(i,j)</code></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/AbstractEvaluation.html#getCost()">getCost()</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/AbstractEvaluation.html" title="class in org.apache.commons.math3.fitting.leastsquares">AbstractEvaluation</a></dt>
<dd>
<div class="block">Get the cost.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.Evaluation.html#getCost()">getCost()</a></span> - Method in interface org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.Evaluation.html" title="interface in org.apache.commons.math3.fitting.leastsquares">LeastSquaresProblem.Evaluation</a></dt>
<dd>
<div class="block">Get the cost.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LevenbergMarquardtOptimizer.html#getCostRelativeTolerance()">getCostRelativeTolerance()</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LevenbergMarquardtOptimizer.html" title="class in org.apache.commons.math3.fitting.leastsquares">LevenbergMarquardtOptimizer</a></dt>
<dd>
<div class="block">Gets the value of a tuning parameter.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#getCount(java.lang.Comparable)">getCount(Comparable&lt;?&gt;)</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Returns the number of values equal to v.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#getCount(int)">getCount(int)</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Returns the number of values equal to v.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#getCount(long)">getCount(long)</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Returns the number of values equal to v.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#getCount(char)">getCount(char)</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Returns the number of values equal to v.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Incrementor.html#getCount()">getCount()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Incrementor.html" title="class in org.apache.commons.math3.util">Incrementor</a></dt>
<dd>
<div class="block">Gets the current count.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MultidimensionalCounter.html#getCount(int...)">getCount(int...)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MultidimensionalCounter.html" title="class in org.apache.commons.math3.util">MultidimensionalCounter</a></dt>
<dd>
<div class="block">Convert to unidimensional counter.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MultidimensionalCounter.Iterator.html#getCount()">getCount()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MultidimensionalCounter.Iterator.html" title="class in org.apache.commons.math3.util">MultidimensionalCounter.Iterator</a></dt>
<dd>
<div class="block">Get the current unidimensional counter slot.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MultidimensionalCounter.Iterator.html#getCount(int)">getCount(int)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MultidimensionalCounter.Iterator.html" title="class in org.apache.commons.math3.util">MultidimensionalCounter.Iterator</a></dt>
<dd>
<div class="block">Get the current count in the selected dimension.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MultidimensionalCounter.html#getCounts(int)">getCounts(int)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MultidimensionalCounter.html" title="class in org.apache.commons.math3.util">MultidimensionalCounter</a></dt>
<dd>
<div class="block">Convert to multidimensional counter.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MultidimensionalCounter.Iterator.html#getCounts()">getCounts()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MultidimensionalCounter.Iterator.html" title="class in org.apache.commons.math3.util">MultidimensionalCounter.Iterator</a></dt>
<dd>
<div class="block">Get the current multidimensional counter slots.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SingularValueDecomposition.html#getCovariance(double)">getCovariance(double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SingularValueDecomposition.html" title="class in org.apache.commons.math3.linear">SingularValueDecomposition</a></dt>
<dd>
<div class="block">Returns the n &times; n covariance matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/StorelessCovariance.html#getCovariance(int, int)">getCovariance(int, int)</a></span> - Method in class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/StorelessCovariance.html" title="class in org.apache.commons.math3.stat.correlation">StorelessCovariance</a></dt>
<dd>
<div class="block">Get the covariance for an individual element of the covariance matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#getCovariance()">getCovariance()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">MultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the covariance matrix of the values that have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StatisticalMultivariateSummary.html#getCovariance()">getCovariance()</a></span> - Method in interface org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StatisticalMultivariateSummary.html" title="interface in org.apache.commons.math3.stat.descriptive">StatisticalMultivariateSummary</a></dt>
<dd>
<div class="block">Returns the covariance of the available values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html#getCovariance()">getCovariance()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedMultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the covariance matrix of the values that have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/Covariance.html#getCovarianceMatrix()">getCovarianceMatrix()</a></span> - Method in class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/Covariance.html" title="class in org.apache.commons.math3.stat.correlation">Covariance</a></dt>
<dd>
<div class="block">Returns the covariance matrix</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/StorelessCovariance.html#getCovarianceMatrix()">getCovarianceMatrix()</a></span> - Method in class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/StorelessCovariance.html" title="class in org.apache.commons.math3.stat.correlation">StorelessCovariance</a></dt>
<dd>
<div class="block">Returns the covariance matrix</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/RegressionResults.html#getCovarianceOfParameters(int, int)">getCovarianceOfParameters(int, int)</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/RegressionResults.html" title="class in org.apache.commons.math3.stat.regression">RegressionResults</a></dt>
<dd>
<div class="block">Returns the covariance between regression parameters i and j.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/MultivariateNormalDistribution.html#getCovariances()">getCovariances()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/MultivariateNormalDistribution.html" title="class in org.apache.commons.math3.distribution">MultivariateNormalDistribution</a></dt>
<dd>
<div class="block">Gets the covariance matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/AbstractEvaluation.html#getCovariances(double)">getCovariances(double)</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/AbstractEvaluation.html" title="class in org.apache.commons.math3.fitting.leastsquares">AbstractEvaluation</a></dt>
<dd>
<div class="block">Get the covariance matrix of the optimized parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.Evaluation.html#getCovariances(double)">getCovariances(double)</a></span> - Method in interface org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.Evaluation.html" title="interface in org.apache.commons.math3.fitting.leastsquares">LeastSquaresProblem.Evaluation</a></dt>
<dd>
<div class="block">Get the covariance matrix of the optimized parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#getCovariances()">getCovariances()</a></span> - Method in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1. Please use <a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#computeCovariances(double[], double)"><code>AbstractLeastSquaresOptimizer.computeCovariances(double[],double)</code></a>
 instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#getCovariances(double)">getCovariances(double)</a></span> - Method in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1. Please use <a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#computeCovariances(double[], double)"><code>AbstractLeastSquaresOptimizer.computeCovariances(double[],double)</code></a>
 instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/NPointCrossover.html#getCrossoverPoints()">getCrossoverPoints()</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/NPointCrossover.html" title="class in org.apache.commons.math3.genetics">NPointCrossover</a></dt>
<dd>
<div class="block">Returns the number of crossover points used by this <a href="./org/apache/commons/math3/genetics/CrossoverPolicy.html" title="interface in org.apache.commons.math3.genetics"><code>CrossoverPolicy</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/GeneticAlgorithm.html#getCrossoverPolicy()">getCrossoverPolicy()</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/GeneticAlgorithm.html" title="class in org.apache.commons.math3.genetics">GeneticAlgorithm</a></dt>
<dd>
<div class="block">Returns the crossover policy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/GeneticAlgorithm.html#getCrossoverRate()">getCrossoverRate()</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/GeneticAlgorithm.html" title="class in org.apache.commons.math3.genetics">GeneticAlgorithm</a></dt>
<dd>
<div class="block">Returns the crossover rate.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#getCumFreq(java.lang.Comparable)">getCumFreq(Comparable&lt;?&gt;)</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Returns the cumulative frequency of values less than or equal to v.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#getCumFreq(int)">getCumFreq(int)</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Returns the cumulative frequency of values less than or equal to v.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#getCumFreq(long)">getCumFreq(long)</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Returns the cumulative frequency of values less than or equal to v.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#getCumFreq(char)">getCumFreq(char)</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Returns the cumulative frequency of values less than or equal to v.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#getCumPct(java.lang.Comparable)">getCumPct(Comparable&lt;?&gt;)</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Returns the cumulative percentage of values less than or equal to v
 (as a proportion between 0 and 1).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#getCumPct(int)">getCumPct(int)</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Returns the cumulative percentage of values less than or equal to v
 (as a proportion between 0 and 1).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#getCumPct(long)">getCumPct(long)</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Returns the cumulative percentage of values less than or equal to v
 (as a proportion between 0 and 1).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#getCumPct(char)">getCumPct(char)</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Returns the cumulative percentage of values less than or equal to v
 (as a proportion between 0 and 1).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/JacobianMatrices.html#getCurrentMainSetJacobian(double[][])">getCurrentMainSetJacobian(double[][])</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/JacobianMatrices.html" title="class in org.apache.commons.math3.ode">JacobianMatrices</a></dt>
<dd>
<div class="block">Get the current value of the Jacobian matrix with respect to state.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/JacobianMatrices.html#getCurrentParameterJacobian(java.lang.String, double[])">getCurrentParameterJacobian(String, double[])</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/JacobianMatrices.html" title="class in org.apache.commons.math3.ode">JacobianMatrices</a></dt>
<dd>
<div class="block">Get the current value of the Jacobian matrix with respect to one parameter.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractIntegrator.html#getCurrentSignedStepsize()">getCurrentSignedStepsize()</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractIntegrator.html" title="class in org.apache.commons.math3.ode">AbstractIntegrator</a></dt>
<dd>
<div class="block">Get the current signed value of the integration stepsize.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ODEIntegrator.html#getCurrentSignedStepsize()">getCurrentSignedStepsize()</a></span> - Method in interface org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ODEIntegrator.html" title="interface in org.apache.commons.math3.ode">ODEIntegrator</a></dt>
<dd>
<div class="block">Get the current signed value of the integration stepsize.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractIntegrator.html#getCurrentStepStart()">getCurrentStepStart()</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractIntegrator.html" title="class in org.apache.commons.math3.ode">AbstractIntegrator</a></dt>
<dd>
<div class="block">Get the current value of the step start time t<sub>i</sub>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html#getCurrentStepStart()">getCurrentStepStart()</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">AdaptiveStepsizeIntegrator</a></dt>
<dd>
<div class="block">Get the current value of the step start time t<sub>i</sub>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ODEIntegrator.html#getCurrentStepStart()">getCurrentStepStart()</a></span> - Method in interface org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ODEIntegrator.html" title="interface in org.apache.commons.math3.ode">ODEIntegrator</a></dt>
<dd>
<div class="block">Get the current value of the step start time t<sub>i</sub>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#getCurrentTime()">getCurrentTime()</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">Get the current soft grid point time.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/StepInterpolator.html#getCurrentTime()">getCurrentTime()</a></span> - Method in interface org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/StepInterpolator.html" title="interface in org.apache.commons.math3.ode.sampling">StepInterpolator</a></dt>
<dd>
<div class="block">Get the current grid point time.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html#getCut()">getCut()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html" title="class in org.apache.commons.math3.geometry.partitioning">BSPTree</a></dt>
<dd>
<div class="block">Get the cut sub-hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/EigenDecomposition.html#getD()">getD()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/EigenDecomposition.html" title="class in org.apache.commons.math3.linear">EigenDecomposition</a></dt>
<dd>
<div class="block">Gets the block diagonal matrix D of the decomposition.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#getData()">getData()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Returns matrix entries as a two-dimensional array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#getData()">getData()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Returns matrix entries as a two-dimensional array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html#getData()">getData()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowFieldMatrix</a></dt>
<dd>
<div class="block">Returns matrix entries as a two-dimensional array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html#getData()">getData()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowRealMatrix</a></dt>
<dd>
<div class="block">Returns matrix entries as a two-dimensional array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#getData()">getData()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Returns vector entries as a T array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#getData()">getData()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Returns matrix entries as a two-dimensional array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#getData()">getData()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Returns matrix entries as a two-dimensional array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DiagonalMatrix.html#getData()">getData()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DiagonalMatrix.html" title="class in org.apache.commons.math3.linear">DiagonalMatrix</a></dt>
<dd>
<div class="block">Returns matrix entries as a two-dimensional array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#getData()">getData()</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Returns matrix entries as a two-dimensional array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVector.html#getData()">getData()</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVector.html" title="interface in org.apache.commons.math3.linear">FieldVector</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, to be removed in 4.0. Please use the <a href="./org/apache/commons/math3/linear/FieldVector.html#toArray()"><code>FieldVector.toArray()</code></a> method instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#getData()">getData()</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Returns matrix entries as a two-dimensional array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#getData()">getData()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, to be removed in 4.0. Please use the <a href="./org/apache/commons/math3/linear/SparseFieldVector.html#toArray()"><code>SparseFieldVector.toArray()</code></a> method instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/StorelessCovariance.html#getData()">getData()</a></span> - Method in class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/StorelessCovariance.html" title="class in org.apache.commons.math3.stat.correlation">StorelessCovariance</a></dt>
<dd>
<div class="block">Return the covariance matrix as two-dimensional array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AbstractUnivariateStatistic.html#getData()">getData()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AbstractUnivariateStatistic.html" title="class in org.apache.commons.math3.stat.descriptive">AbstractUnivariateStatistic</a></dt>
<dd>
<div class="block">Get a copy of the stored data array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/FuzzyKMeansClusterer.html#getDataPoints()">getDataPoints()</a></span> - Method in class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/FuzzyKMeansClusterer.html" title="class in org.apache.commons.math3.ml.clustering">FuzzyKMeansClusterer</a></dt>
<dd>
<div class="block">Returns an unmodifiable list of the data points used in the last
 call to <a href="./org/apache/commons/math3/ml/clustering/FuzzyKMeansClusterer.html#cluster(java.util.Collection)"><code>FuzzyKMeansClusterer.cluster(Collection)</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html#getDataRef()">getDataRef()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowFieldMatrix</a></dt>
<dd>
<div class="block">Get a reference to the underlying data array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html#getDataRef()">getDataRef()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowRealMatrix</a></dt>
<dd>
<div class="block">Get a reference to the underlying data array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#getDataRef()">getDataRef()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Returns a reference to the underlying data array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#getDataRef()">getDataRef()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Get a reference to the underlying data array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DiagonalMatrix.html#getDataRef()">getDataRef()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DiagonalMatrix.html" title="class in org.apache.commons.math3.linear">DiagonalMatrix</a></dt>
<dd>
<div class="block">Gets a reference to the underlying data array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AbstractUnivariateStatistic.html#getDataRef()">getDataRef()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AbstractUnivariateStatistic.html" title="class in org.apache.commons.math3.stat.descriptive">AbstractUnivariateStatistic</a></dt>
<dd>
<div class="block">Get a reference to the stored data array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpDec.html#getDecimalDigits()">getDecimalDigits()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpDec.html" title="class in org.apache.commons.math3.dfp">DfpDec</a></dt>
<dd>
<div class="block">Get the number of decimal digits this class is going to represent.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/GaussNewtonOptimizer.html#getDecomposition()">getDecomposition()</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/GaussNewtonOptimizer.html" title="class in org.apache.commons.math3.fitting.leastsquares">GaussNewtonOptimizer</a></dt>
<dd>
<div class="block">Get the matrix decomposition algorithm used to solve the normal equations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/AbstractFormat.html#getDefaultNumberFormat()">getDefaultNumberFormat()</a></span> - Static method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/AbstractFormat.html" title="class in org.apache.commons.math3.fraction">AbstractFormat</a></dt>
<dd>
<div class="block">Create a default number format.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/AbstractFormat.html#getDefaultNumberFormat(java.util.Locale)">getDefaultNumberFormat(Locale)</a></span> - Static method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/AbstractFormat.html" title="class in org.apache.commons.math3.fraction">AbstractFormat</a></dt>
<dd>
<div class="block">Create a default number format.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/FractionFormat.html#getDefaultNumberFormat()">getDefaultNumberFormat()</a></span> - Static method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/FractionFormat.html" title="class in org.apache.commons.math3.fraction">FractionFormat</a></dt>
<dd>
<div class="block">Create a default number format.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/CompositeFormat.html#getDefaultNumberFormat()">getDefaultNumberFormat()</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/CompositeFormat.html" title="class in org.apache.commons.math3.util">CompositeFormat</a></dt>
<dd>
<div class="block">Create a default number format.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/CompositeFormat.html#getDefaultNumberFormat(java.util.Locale)">getDefaultNumberFormat(Locale)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/CompositeFormat.html" title="class in org.apache.commons.math3.util">CompositeFormat</a></dt>
<dd>
<div class="block">Create a default number format.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html#getDegreesOfFreedom()">getDegreesOfFreedom()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html" title="class in org.apache.commons.math3.distribution">ChiSquaredDistribution</a></dt>
<dd>
<div class="block">Access the number of degrees of freedom.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/TDistribution.html#getDegreesOfFreedom()">getDegreesOfFreedom()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/TDistribution.html" title="class in org.apache.commons.math3.distribution">TDistribution</a></dt>
<dd>
<div class="block">Access the degrees of freedom.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#getDelta()">getDelta()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Get the elevation of the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#getDelta()">getDelta()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Get the elevation of the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#getDenominator()">getDenominator()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Access the denominator as a <code>BigInteger</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#getDenominator()">getDenominator()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">Access the denominator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#getDenominatorAsInt()">getDenominatorAsInt()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Access the denominator as a <tt>int</tt>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#getDenominatorAsLong()">getDenominatorAsLong()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Access the denominator as a <tt>long</tt>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/FDistribution.html#getDenominatorDegreesOfFreedom()">getDenominatorDegreesOfFreedom()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/FDistribution.html" title="class in org.apache.commons.math3.distribution">FDistribution</a></dt>
<dd>
<div class="block">Access the denominator degrees of freedom.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/AbstractFormat.html#getDenominatorFormat()">getDenominatorFormat()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/AbstractFormat.html" title="class in org.apache.commons.math3.fraction">AbstractFormat</a></dt>
<dd>
<div class="block">Access the denominator format.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#getDerivative(int)">getDerivative(int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Get the derivative with respect to a particular index variable.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/CholeskyDecomposition.html#getDeterminant()">getDeterminant()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/CholeskyDecomposition.html" title="class in org.apache.commons.math3.linear">CholeskyDecomposition</a></dt>
<dd>
<div class="block">Return the determinant of the matrix</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/EigenDecomposition.html#getDeterminant()">getDeterminant()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/EigenDecomposition.html" title="class in org.apache.commons.math3.linear">EigenDecomposition</a></dt>
<dd>
<div class="block">Computes the determinant of the matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldLUDecomposition.html#getDeterminant()">getDeterminant()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldLUDecomposition.html" title="class in org.apache.commons.math3.linear">FieldLUDecomposition</a></dt>
<dd>
<div class="block">Return the determinant of the matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/LUDecomposition.html#getDeterminant()">getDeterminant()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/LUDecomposition.html" title="class in org.apache.commons.math3.linear">LUDecomposition</a></dt>
<dd>
<div class="block">Return the determinant of the matrix</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/MillerUpdatingRegression.html#getDiagonalOfHatMatrix(double[])">getDiagonalOfHatMatrix(double[])</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/MillerUpdatingRegression.html" title="class in org.apache.commons.math3.stat.regression">MillerUpdatingRegression</a></dt>
<dd>
<div class="block">Gets the diagonal of the Hat matrix also known as the leverage matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/AbstractMultivariateRealDistribution.html#getDimension()">getDimension()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/AbstractMultivariateRealDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractMultivariateRealDistribution</a></dt>
<dd>
<div class="block">Gets the number of random variables of the distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/MultivariateRealDistribution.html#getDimension()">getDimension()</a></span> - Method in interface org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/MultivariateRealDistribution.html" title="interface in org.apache.commons.math3.distribution">MultivariateRealDistribution</a></dt>
<dd>
<div class="block">Gets the number of random variables of the distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/DimensionMismatchException.html#getDimension()">getDimension()</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/DimensionMismatchException.html" title="class in org.apache.commons.math3.exception">DimensionMismatchException</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Euclidean1D.html#getDimension()">getDimension()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Euclidean1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Euclidean1D</a></dt>
<dd>
<div class="block">Get the dimension of the space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Euclidean3D.html#getDimension()">getDimension()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Euclidean3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Euclidean3D</a></dt>
<dd>
<div class="block">Get the dimension of the space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Euclidean2D.html#getDimension()">getDimension()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Euclidean2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Euclidean2D</a></dt>
<dd>
<div class="block">Get the dimension of the space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/Space.html#getDimension()">getDimension()</a></span> - Method in interface org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/Space.html" title="interface in org.apache.commons.math3.geometry">Space</a></dt>
<dd>
<div class="block">Get the dimension of the space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/Sphere1D.html#getDimension()">getDimension()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/Sphere1D.html" title="class in org.apache.commons.math3.geometry.spherical.oned">Sphere1D</a></dt>
<dd>
<div class="block">Get the dimension of the space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/Sphere2D.html#getDimension()">getDimension()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/Sphere2D.html" title="class in org.apache.commons.math3.geometry.spherical.twod">Sphere2D</a></dt>
<dd>
<div class="block">Get the dimension of the space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#getDimension()">getDimension()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Returns the size of the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#getDimension()">getDimension()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Returns the size of the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVector.html#getDimension()">getDimension()</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVector.html" title="interface in org.apache.commons.math3.linear">FieldVector</a></dt>
<dd>
<div class="block">Returns the size of the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#getDimension()">getDimension()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Returns the size of the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#getDimension()">getDimension()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Returns the size of the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#getDimension()">getDimension()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Returns the size of the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/EquationsMapper.html#getDimension()">getDimension()</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/EquationsMapper.html" title="class in org.apache.commons.math3.ode">EquationsMapper</a></dt>
<dd>
<div class="block">Get the dimension of the secondary state parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/FirstOrderConverter.html#getDimension()">getDimension()</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/FirstOrderConverter.html" title="class in org.apache.commons.math3.ode">FirstOrderConverter</a></dt>
<dd>
<div class="block">Get the dimension of the problem.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/FirstOrderDifferentialEquations.html#getDimension()">getDimension()</a></span> - Method in interface org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/FirstOrderDifferentialEquations.html" title="interface in org.apache.commons.math3.ode">FirstOrderDifferentialEquations</a></dt>
<dd>
<div class="block">Get the dimension of the problem.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/SecondaryEquations.html#getDimension()">getDimension()</a></span> - Method in interface org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/SecondaryEquations.html" title="interface in org.apache.commons.math3.ode">SecondaryEquations</a></dt>
<dd>
<div class="block">Get the dimension of the secondary state parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/SecondOrderDifferentialEquations.html#getDimension()">getDimension()</a></span> - Method in interface org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/SecondOrderDifferentialEquations.html" title="interface in org.apache.commons.math3.ode">SecondOrderDifferentialEquations</a></dt>
<dd>
<div class="block">Get the dimension of the problem.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/AbstractSimplex.html#getDimension()">getDimension()</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/AbstractSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">AbstractSimplex</a></dt>
<dd>
<div class="block">Get simplex dimension.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/AbstractSimplex.html#getDimension()">getDimension()</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/AbstractSimplex.html" title="class in org.apache.commons.math3.optimization.direct">AbstractSimplex</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get simplex dimension.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#getDimension()">getDimension()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">MultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the dimension of the data</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StatisticalMultivariateSummary.html#getDimension()">getDimension()</a></span> - Method in interface org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StatisticalMultivariateSummary.html" title="interface in org.apache.commons.math3.stat.descriptive">StatisticalMultivariateSummary</a></dt>
<dd>
<div class="block">Returns the dimension of the data</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html#getDimension()">getDimension()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedMultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the dimension of the data</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MultidimensionalCounter.html#getDimension()">getDimension()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MultidimensionalCounter.html" title="class in org.apache.commons.math3.util">MultidimensionalCounter</a></dt>
<dd>
<div class="block">Get the number of dimensions of the multidimensional counter.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/NonMonotonicSequenceException.html#getDirection()">getDirection()</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/NonMonotonicSequenceException.html" title="class in org.apache.commons.math3.exception">NonMonotonicSequenceException</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html#getDirection()">getDirection()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Line</a></dt>
<dd>
<div class="block">Get the normalized direction vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#getDistance(org.apache.commons.math3.linear.RealVector)">getDistance(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Distance between two vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#getDistance(org.apache.commons.math3.linear.OpenMapRealVector)">getDistance(OpenMapRealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Optimized method to compute distance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#getDistance(org.apache.commons.math3.linear.RealVector)">getDistance(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Distance between two vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#getDistance(org.apache.commons.math3.linear.RealVector)">getDistance(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Distance between two vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/Clusterer.html#getDistanceMeasure()">getDistanceMeasure()</a></span> - Method in class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/Clusterer.html" title="class in org.apache.commons.math3.ml.clustering">Clusterer</a></dt>
<dd>
<div class="block">Returns the <a href="./org/apache/commons/math3/ml/distance/DistanceMeasure.html" title="interface in org.apache.commons.math3.ml.distance"><code>DistanceMeasure</code></a> instance used by this clusterer.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#getE()">getE()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Get the constant e.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/EigenDecomposition.html#getEigenvector(int)">getEigenvector(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/EigenDecomposition.html" title="class in org.apache.commons.math3.linear">EigenDecomposition</a></dt>
<dd>
<div class="block">Gets a copy of the i<sup>th</sup> eigenvector of the original matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/utilities/AVLTree.Node.html#getElement()">getElement()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.utilities.<a href="./org/apache/commons/math3/geometry/partitioning/utilities/AVLTree.Node.html" title="class in org.apache.commons.math3.geometry.partitioning.utilities">AVLTree.Node</a></dt>
<dd>
<div class="block">Get the contained element.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getElement(int)">getElement(int)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Returns the element at the specified index</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html#getElement(int)">getElement(int)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedDescriptiveStatistics</a></dt>
<dd>
<div class="block">Returns the element at the specified index</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/DoubleArray.html#getElement(int)">getElement(int)</a></span> - Method in interface org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/DoubleArray.html" title="interface in org.apache.commons.math3.util">DoubleArray</a></dt>
<dd>
<div class="block">Returns the element at the specified index.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#getElement(int)">getElement(int)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block">Returns the element at the specified index</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/DoubleArray.html#getElements()">getElements()</a></span> - Method in interface org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/DoubleArray.html" title="interface in org.apache.commons.math3.util">DoubleArray</a></dt>
<dd>
<div class="block">Returns a double[] array containing the elements of this
 <code>DoubleArray</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#getElements()">getElements()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block">Returns a double array containing the elements of this
 <code>ResizableArray</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/ElitisticListPopulation.html#getElitismRate()">getElitismRate()</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/ElitisticListPopulation.html" title="class in org.apache.commons.math3.genetics">ElitisticListPopulation</a></dt>
<dd>
<div class="block">Access the elitism rate.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/ValueServer.html#getEmpiricalDistribution()">getEmpiricalDistribution()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/ValueServer.html" title="class in org.apache.commons.math3.random">ValueServer</a></dt>
<dd>
<div class="block">Returns the <a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random"><code>EmpiricalDistribution</code></a> used when operating in <a href="./org/apache/commons/math3/random/ValueServer.html#DIGEST_MODE">0</a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/KMeansPlusPlusClusterer.html#getEmptyClusterStrategy()">getEmptyClusterStrategy()</a></span> - Method in class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/KMeansPlusPlusClusterer.html" title="class in org.apache.commons.math3.ml.clustering">KMeansPlusPlusClusterer</a></dt>
<dd>
<div class="block">Returns the <a href="./org/apache/commons/math3/ml/clustering/KMeansPlusPlusClusterer.EmptyClusterStrategy.html" title="enum in org.apache.commons.math3.ml.clustering"><code>KMeansPlusPlusClusterer.EmptyClusterStrategy</code></a> used by this instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/SphericalPolygonsSet.html#getEnclosingCap()">getEnclosingCap()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/SphericalPolygonsSet.html" title="class in org.apache.commons.math3.geometry.spherical.twod">SphericalPolygonsSet</a></dt>
<dd>
<div class="block">Get a spherical cap enclosing the polygon.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Segment.html#getEnd()">getEnd()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Segment.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Segment</a></dt>
<dd>
<div class="block">Get the end point of the segment.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Segment.html#getEnd()">getEnd()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Segment.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Segment</a></dt>
<dd>
<div class="block">Get the end point of the segment.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/Edge.html#getEnd()">getEnd()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/Edge.html" title="class in org.apache.commons.math3.geometry.spherical.twod">Edge</a></dt>
<dd>
<div class="block">Get end vertex.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#getEntry(int, int)">getEntry(int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Returns the entry in the specified row and column.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#getEntry(int, int)">getEntry(int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Get the entry in the specified row and column.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html#getEntry(int, int)">getEntry(int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowFieldMatrix</a></dt>
<dd>
<div class="block">Returns the entry in the specified row and column.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html#getEntry(int, int)">getEntry(int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowRealMatrix</a></dt>
<dd>
<div class="block">Get the entry in the specified row and column.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#getEntry(int)">getEntry(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Returns the entry in the specified index.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#getEntry(int)">getEntry(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Return the entry at the specified index.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#getEntry(int, int)">getEntry(int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Returns the entry in the specified row and column.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#getEntry(int, int)">getEntry(int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Get the entry in the specified row and column.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DiagonalMatrix.html#getEntry(int, int)">getEntry(int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DiagonalMatrix.html" title="class in org.apache.commons.math3.linear">DiagonalMatrix</a></dt>
<dd>
<div class="block">Get the entry in the specified row and column.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#getEntry(int, int)">getEntry(int, int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Returns the entry in the specified row and column.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVector.html#getEntry(int)">getEntry(int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVector.html" title="interface in org.apache.commons.math3.linear">FieldVector</a></dt>
<dd>
<div class="block">Returns the entry in the specified index.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealMatrix.html#getEntry(int, int)">getEntry(int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealMatrix.html" title="class in org.apache.commons.math3.linear">OpenMapRealMatrix</a></dt>
<dd>
<div class="block">Get the entry in the specified row and column.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#getEntry(int)">getEntry(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Return the entry at the specified index.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#getEntry(int, int)">getEntry(int, int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Get the entry in the specified row and column.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#getEntry(int)">getEntry(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Return the entry at the specified index.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldMatrix.html#getEntry(int, int)">getEntry(int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldMatrix.html" title="class in org.apache.commons.math3.linear">SparseFieldMatrix</a></dt>
<dd>
<div class="block">Returns the entry in the specified row and column.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#getEntry(int)">getEntry(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Returns the entry in the specified index.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/DBSCANClusterer.html#getEps()">getEps()</a></span> - Method in class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/DBSCANClusterer.html" title="class in org.apache.commons.math3.ml.clustering">DBSCANClusterer</a></dt>
<dd>
<div class="block">Returns the maximum radius of the neighborhood to be considered.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/clustering/DBSCANClusterer.html#getEps()">getEps()</a></span> - Method in class org.apache.commons.math3.stat.clustering.<a href="./org/apache/commons/math3/stat/clustering/DBSCANClusterer.html" title="class in org.apache.commons.math3.stat.clustering">DBSCANClusterer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Returns the maximum radius of the neighborhood to be considered.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/FuzzyKMeansClusterer.html#getEpsilon()">getEpsilon()</a></span> - Method in class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/FuzzyKMeansClusterer.html" title="class in org.apache.commons.math3.ml.clustering">FuzzyKMeansClusterer</a></dt>
<dd>
<div class="block">Returns the convergence criteria used by this instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/filter/KalmanFilter.html#getErrorCovariance()">getErrorCovariance()</a></span> - Method in class org.apache.commons.math3.filter.<a href="./org/apache/commons/math3/filter/KalmanFilter.html" title="class in org.apache.commons.math3.filter">KalmanFilter</a></dt>
<dd>
<div class="block">Returns the current error covariance matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/filter/KalmanFilter.html#getErrorCovarianceMatrix()">getErrorCovarianceMatrix()</a></span> - Method in class org.apache.commons.math3.filter.<a href="./org/apache/commons/math3/filter/KalmanFilter.html" title="class in org.apache.commons.math3.filter">KalmanFilter</a></dt>
<dd>
<div class="block">Returns a copy of the current error covariance matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/RegressionResults.html#getErrorSumSquares()">getErrorSumSquares()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/RegressionResults.html" title="class in org.apache.commons.math3.stat.regression">RegressionResults</a></dt>
<dd>
<div class="block">Returns the <a href="http://www.xycoon.com/SumOfSquares.htm">
 sum of squared errors</a> (SSE) associated with the regression
 model.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#getESplit()">getESplit()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Get the constant e split in two pieces.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresAdapter.html#getEvaluationCounter()">getEvaluationCounter()</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresAdapter.html" title="class in org.apache.commons.math3.fitting.leastsquares">LeastSquaresAdapter</a></dt>
<dd>
<div class="block">Get a independent Incrementor that counts up to the maximum number of evaluations
 and then throws an exception.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/AbstractOptimizationProblem.html#getEvaluationCounter()">getEvaluationCounter()</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/AbstractOptimizationProblem.html" title="class in org.apache.commons.math3.optim">AbstractOptimizationProblem</a></dt>
<dd>
<div class="block">Get a independent Incrementor that counts up to the maximum number of evaluations
 and then throws an exception.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/OptimizationProblem.html#getEvaluationCounter()">getEvaluationCounter()</a></span> - Method in interface org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/OptimizationProblem.html" title="interface in org.apache.commons.math3.optim">OptimizationProblem</a></dt>
<dd>
<div class="block">Get a independent Incrementor that counts up to the maximum number of evaluations
 and then throws an exception.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html#getEvaluations()">getEvaluations()</a></span> - Method in class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">BaseAbstractUnivariateIntegrator</a></dt>
<dd>
<div class="block">Get the number of function evaluations of the last run of the integrator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/UnivariateIntegrator.html#getEvaluations()">getEvaluations()</a></span> - Method in interface org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/UnivariateIntegrator.html" title="interface in org.apache.commons.math3.analysis.integration">UnivariateIntegrator</a></dt>
<dd>
<div class="block">Get the number of function evaluations of the last run of the integrator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html#getEvaluations()">getEvaluations()</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BaseAbstractUnivariateSolver</a></dt>
<dd>
<div class="block">Get the number of evaluations of the objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseUnivariateSolver.html#getEvaluations()">getEvaluations()</a></span> - Method in interface org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseUnivariateSolver.html" title="interface in org.apache.commons.math3.analysis.solvers">BaseUnivariateSolver</a></dt>
<dd>
<div class="block">Get the number of evaluations of the objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/BracketingNthOrderBrentSolverDFP.html#getEvaluations()">getEvaluations()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/BracketingNthOrderBrentSolverDFP.html" title="class in org.apache.commons.math3.dfp">BracketingNthOrderBrentSolverDFP</a></dt>
<dd>
<div class="block">Get the number of evaluations of the objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresOptimizer.Optimum.html#getEvaluations()">getEvaluations()</a></span> - Method in interface org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresOptimizer.Optimum.html" title="interface in org.apache.commons.math3.fitting.leastsquares">LeastSquaresOptimizer.Optimum</a></dt>
<dd>
<div class="block">Get the number of times the model was evaluated in order to produce this
 optimum.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractIntegrator.html#getEvaluations()">getEvaluations()</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractIntegrator.html" title="class in org.apache.commons.math3.ode">AbstractIntegrator</a></dt>
<dd>
<div class="block">Get the number of evaluations of the differential equations function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ODEIntegrator.html#getEvaluations()">getEvaluations()</a></span> - Method in interface org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ODEIntegrator.html" title="interface in org.apache.commons.math3.ode">ODEIntegrator</a></dt>
<dd>
<div class="block">Get the number of evaluations of the differential equations function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/BaseMultiStartMultivariateOptimizer.html#getEvaluations()">getEvaluations()</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/BaseMultiStartMultivariateOptimizer.html" title="class in org.apache.commons.math3.optim">BaseMultiStartMultivariateOptimizer</a></dt>
<dd>
<div class="block">Gets the number of evaluations of the objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/BaseOptimizer.html#getEvaluations()">getEvaluations()</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/BaseOptimizer.html" title="class in org.apache.commons.math3.optim">BaseOptimizer</a></dt>
<dd>
<div class="block">Gets the number of evaluations of the objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/BracketFinder.html#getEvaluations()">getEvaluations()</a></span> - Method in class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/BracketFinder.html" title="class in org.apache.commons.math3.optim.univariate">BracketFinder</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/MultiStartUnivariateOptimizer.html#getEvaluations()">getEvaluations()</a></span> - Method in class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/MultiStartUnivariateOptimizer.html" title="class in org.apache.commons.math3.optim.univariate">MultiStartUnivariateOptimizer</a></dt>
<dd>
<div class="block">Gets the number of evaluations of the objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/BaseMultivariateMultiStartOptimizer.html#getEvaluations()">getEvaluations()</a></span> - Method in class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/BaseMultivariateMultiStartOptimizer.html" title="class in org.apache.commons.math3.optimization">BaseMultivariateMultiStartOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the number of evaluations of the objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/BaseMultivariateVectorMultiStartOptimizer.html#getEvaluations()">getEvaluations()</a></span> - Method in class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/BaseMultivariateVectorMultiStartOptimizer.html" title="class in org.apache.commons.math3.optimization">BaseMultivariateVectorMultiStartOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the number of evaluations of the objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/BaseOptimizer.html#getEvaluations()">getEvaluations()</a></span> - Method in interface org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/BaseOptimizer.html" title="interface in org.apache.commons.math3.optimization">BaseOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the number of evaluations of the objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html#getEvaluations()">getEvaluations()</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the number of evaluations of the objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html#getEvaluations()">getEvaluations()</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateVectorOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the number of evaluations of the objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/BaseAbstractUnivariateOptimizer.html#getEvaluations()">getEvaluations()</a></span> - Method in class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/BaseAbstractUnivariateOptimizer.html" title="class in org.apache.commons.math3.optimization.univariate">BaseAbstractUnivariateOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the number of evaluations of the objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/BracketFinder.html#getEvaluations()">getEvaluations()</a></span> - Method in class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/BracketFinder.html" title="class in org.apache.commons.math3.optimization.univariate">BracketFinder</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/UnivariateMultiStartOptimizer.html#getEvaluations()">getEvaluations()</a></span> - Method in class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/UnivariateMultiStartOptimizer.html" title="class in org.apache.commons.math3.optimization.univariate">UnivariateMultiStartOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the number of evaluations of the objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractIntegrator.html#getEvaluationsCounter()">getEvaluationsCounter()</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractIntegrator.html" title="class in org.apache.commons.math3.ode">AbstractIntegrator</a></dt>
<dd>
<div class="block">Get the evaluations counter.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/events/EventState.html#getEventHandler()">getEventHandler()</a></span> - Method in class org.apache.commons.math3.ode.events.<a href="./org/apache/commons/math3/ode/events/EventState.html" title="class in org.apache.commons.math3.ode.events">EventState</a></dt>
<dd>
<div class="block">Get the underlying event handler.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractIntegrator.html#getEventHandlers()">getEventHandlers()</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractIntegrator.html" title="class in org.apache.commons.math3.ode">AbstractIntegrator</a></dt>
<dd>
<div class="block">Get all the event handlers that have been added to the integrator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ODEIntegrator.html#getEventHandlers()">getEventHandlers()</a></span> - Method in interface org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ODEIntegrator.html" title="interface in org.apache.commons.math3.ode">ODEIntegrator</a></dt>
<dd>
<div class="block">Get all the event handlers that have been added to the integrator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/events/EventState.html#getEventTime()">getEventTime()</a></span> - Method in class org.apache.commons.math3.ode.events.<a href="./org/apache/commons/math3/ode/events/EventState.html" title="class in org.apache.commons.math3.ode.events">EventState</a></dt>
<dd>
<div class="block">Get the occurrence time of the event triggered in the current step.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractIntegrator.html#getExpandable()">getExpandable()</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractIntegrator.html" title="class in org.apache.commons.math3.ode">AbstractIntegrator</a></dt>
<dd>
<div class="block">Get the differential equations to integrate.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#getExpansionFactor()">getExpansionFactor()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1. Return type will be changed to "double" in 4.0.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#getExpansionMode()">getExpansionMode()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1. Return value to be changed to
 <a href="./org/apache/commons/math3/util/ResizableDoubleArray.ExpansionMode.html" title="enum in org.apache.commons.math3.util"><code>ResizableDoubleArray.ExpansionMode</code></a> in 4.0.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixDimensionMismatchException.html#getExpectedColumnDimension()">getExpectedColumnDimension()</a></span> - Method in exception org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixDimensionMismatchException.html" title="class in org.apache.commons.math3.linear">MatrixDimensionMismatchException</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MultiDimensionMismatchException.html#getExpectedDimension(int)">getExpectedDimension(int)</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MultiDimensionMismatchException.html" title="class in org.apache.commons.math3.exception">MultiDimensionMismatchException</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MultiDimensionMismatchException.html#getExpectedDimensions()">getExpectedDimensions()</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MultiDimensionMismatchException.html" title="class in org.apache.commons.math3.exception">MultiDimensionMismatchException</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixDimensionMismatchException.html#getExpectedRowDimension()">getExpectedRowDimension()</a></span> - Method in exception org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixDimensionMismatchException.html" title="class in org.apache.commons.math3.linear">MatrixDimensionMismatchException</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#getExponent()">getExponent()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Return the exponent of the instance value, removing the bias.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ZipfDistribution.html#getExponent()">getExponent()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ZipfDistribution.html" title="class in org.apache.commons.math3.distribution">ZipfDistribution</a></dt>
<dd>
<div class="block">Get the exponent characterizing the distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#getExponent(double)">getExponent(double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Return the exponent of a double number, removing the bias.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#getExponent(float)">getExponent(float)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Return the exponent of a float number, removing the bias.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/Neuron.html#getFeatures()">getFeatures()</a></span> - Method in class org.apache.commons.math3.ml.neuralnet.<a href="./org/apache/commons/math3/ml/neuralnet/Neuron.html" title="class in org.apache.commons.math3.ml.neuralnet">Neuron</a></dt>
<dd>
<div class="block">Gets the neuron's features.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/oned/NeuronString.html#getFeatures(int)">getFeatures(int)</a></span> - Method in class org.apache.commons.math3.ml.neuralnet.oned.<a href="./org/apache/commons/math3/ml/neuralnet/oned/NeuronString.html" title="class in org.apache.commons.math3.ml.neuralnet.oned">NeuronString</a></dt>
<dd>
<div class="block">Retrieves the features set from the neuron at location
 <code>i</code> in the map.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/Network.html#getFeaturesSize()">getFeaturesSize()</a></span> - Method in class org.apache.commons.math3.ml.neuralnet.<a href="./org/apache/commons/math3/ml/neuralnet/Network.html" title="class in org.apache.commons.math3.ml.neuralnet">Network</a></dt>
<dd>
<div class="block">Gets the size of the neurons' features set.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/NoBracketingException.html#getFHi()">getFHi()</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/NoBracketingException.html" title="class in org.apache.commons.math3.exception">NoBracketingException</a></dt>
<dd>
<div class="block">Get the value at the higher end of the interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/BracketFinder.html#getFHi()">getFHi()</a></span> - Method in class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/BracketFinder.html" title="class in org.apache.commons.math3.optim.univariate">BracketFinder</a></dt>
<dd>
<div class="block">Get function value at <a href="./org/apache/commons/math3/optim/univariate/BracketFinder.html#getHi()"><code>BracketFinder.getHi()</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/BracketFinder.html#getFHi()">getFHi()</a></span> - Method in class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/BracketFinder.html" title="class in org.apache.commons.math3.optimization.univariate">BracketFinder</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get function value at <a href="./org/apache/commons/math3/optimization/univariate/BracketFinder.html#getHi()"><code>BracketFinder.getHi()</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#getField()">getField()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Get the <a href="./org/apache/commons/math3/Field.html" title="interface in org.apache.commons.math3"><code>Field</code></a> to which the instance belongs.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#getField()">getField()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Get the <a href="./org/apache/commons/math3/Field.html" title="interface in org.apache.commons.math3"><code>Field</code></a> to which the instance belongs.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#getField()">getField()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Get the <a href="./org/apache/commons/math3/Field.html" title="interface in org.apache.commons.math3"><code>Field</code></a> to which the instance belongs.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#getField()">getField()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Get the <a href="./org/apache/commons/math3/Field.html" title="interface in org.apache.commons.math3"><code>Field</code></a> (really a <a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp"><code>DfpField</code></a>) to which the instance belongs.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/FieldElement.html#getField()">getField()</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/FieldElement.html" title="interface in org.apache.commons.math3">FieldElement</a></dt>
<dd>
<div class="block">Get the <a href="./org/apache/commons/math3/Field.html" title="interface in org.apache.commons.math3"><code>Field</code></a> to which the instance belongs.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#getField()">getField()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">Get the <a href="./org/apache/commons/math3/Field.html" title="interface in org.apache.commons.math3"><code>Field</code></a> to which the instance belongs.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#getField()">getField()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">Get the <a href="./org/apache/commons/math3/Field.html" title="interface in org.apache.commons.math3"><code>Field</code></a> to which the instance belongs.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#getField()">getField()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Get the type of field elements of the matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#getField()">getField()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Get the type of field elements of the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#getField()">getField()</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Get the type of field elements of the matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVector.html#getField()">getField()</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVector.html" title="interface in org.apache.commons.math3.linear">FieldVector</a></dt>
<dd>
<div class="block">Get the type of field elements of the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#getField()">getField()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Get the type of field elements of the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#getField()">getField()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dd>
<div class="block">Get the <a href="./org/apache/commons/math3/Field.html" title="interface in org.apache.commons.math3"><code>Field</code></a> to which the instance belongs.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#getField()">getField()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Get the <a href="./org/apache/commons/math3/Field.html" title="interface in org.apache.commons.math3"><code>Field</code></a> to which the instance belongs.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ContinuousOutputModel.html#getFinalTime()">getFinalTime()</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ContinuousOutputModel.html" title="class in org.apache.commons.math3.ode">ContinuousOutputModel</a></dt>
<dd>
<div class="block">Get the final integration time.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/ChromosomePair.html#getFirst()">getFirst()</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/ChromosomePair.html" title="class in org.apache.commons.math3.genetics">ChromosomePair</a></dt>
<dd>
<div class="block">Access the first chromosome.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Pair.html#getFirst()">getFirst()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Pair.html" title="class in org.apache.commons.math3.util">Pair</a></dt>
<dd>
<div class="block">Get the first element of the pair.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/EquationsMapper.html#getFirstIndex()">getFirstIndex()</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/EquationsMapper.html" title="class in org.apache.commons.math3.ode">EquationsMapper</a></dt>
<dd>
<div class="block">Get the index of the first equation element in complete state arrays.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/Chromosome.html#getFitness()">getFitness()</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/Chromosome.html" title="class in org.apache.commons.math3.genetics">Chromosome</a></dt>
<dd>
<div class="block">Access the fitness of this chromosome.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/fitting/MultivariateNormalMixtureExpectationMaximization.html#getFittedModel()">getFittedModel()</a></span> - Method in class org.apache.commons.math3.distribution.fitting.<a href="./org/apache/commons/math3/distribution/fitting/MultivariateNormalMixtureExpectationMaximization.html" title="class in org.apache.commons.math3.distribution.fitting">MultivariateNormalMixtureExpectationMaximization</a></dt>
<dd>
<div class="block">Gets the fitted model.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/ListPopulation.html#getFittestChromosome()">getFittestChromosome()</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/ListPopulation.html" title="class in org.apache.commons.math3.genetics">ListPopulation</a></dt>
<dd>
<div class="block">Access the fittest chromosome in this population.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/Population.html#getFittestChromosome()">getFittestChromosome()</a></span> - Method in interface org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/Population.html" title="interface in org.apache.commons.math3.genetics">Population</a></dt>
<dd>
<div class="block">Access the fittest chromosome in this population.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/NoBracketingException.html#getFLo()">getFLo()</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/NoBracketingException.html" title="class in org.apache.commons.math3.exception">NoBracketingException</a></dt>
<dd>
<div class="block">Get the value at the lower end of the interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/BracketFinder.html#getFLo()">getFLo()</a></span> - Method in class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/BracketFinder.html" title="class in org.apache.commons.math3.optim.univariate">BracketFinder</a></dt>
<dd>
<div class="block">Get function value at <a href="./org/apache/commons/math3/optim/univariate/BracketFinder.html#getLo()"><code>BracketFinder.getLo()</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/BracketFinder.html#getFLo()">getFLo()</a></span> - Method in class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/BracketFinder.html" title="class in org.apache.commons.math3.optimization.univariate">BracketFinder</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get function value at <a href="./org/apache/commons/math3/optimization/univariate/BracketFinder.html#getLo()"><code>BracketFinder.getLo()</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/BracketFinder.html#getFMid()">getFMid()</a></span> - Method in class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/BracketFinder.html" title="class in org.apache.commons.math3.optim.univariate">BracketFinder</a></dt>
<dd>
<div class="block">Get function value at <a href="./org/apache/commons/math3/optim/univariate/BracketFinder.html#getMid()"><code>BracketFinder.getMid()</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/BracketFinder.html#getFMid()">getFMid()</a></span> - Method in class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/BracketFinder.html" title="class in org.apache.commons.math3.optimization.univariate">BracketFinder</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get function value at <a href="./org/apache/commons/math3/optimization/univariate/BracketFinder.html#getMid()"><code>BracketFinder.getMid()</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/VectorFormat.html#getFormat()">getFormat()</a></span> - Method in class org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/VectorFormat.html" title="class in org.apache.commons.math3.geometry">VectorFormat</a></dt>
<dd>
<div class="block">Get the components format.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrixFormat.html#getFormat()">getFormat()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrixFormat.html" title="class in org.apache.commons.math3.linear">RealMatrixFormat</a></dt>
<dd>
<div class="block">Get the components format.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVectorFormat.html#getFormat()">getFormat()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVectorFormat.html" title="class in org.apache.commons.math3.linear">RealVectorFormat</a></dt>
<dd>
<div class="block">Get the components format.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#getFreeParameters()">getFreeParameters()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Get the number of free parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#getFreeParameters()">getFreeParameters()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Get the number of free parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#getFrobeniusNorm()">getFrobeniusNorm()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Returns the <a href="http://mathworld.wolfram.com/FrobeniusNorm.html">
 Frobenius norm</a> of the matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#getFrobeniusNorm()">getFrobeniusNorm()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Returns the <a href="http://mathworld.wolfram.com/FrobeniusNorm.html">
 Frobenius norm</a> of the matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#getFrobeniusNorm()">getFrobeniusNorm()</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Returns the <a href="http://mathworld.wolfram.com/FrobeniusNorm.html">
 Frobenius norm</a> of the matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/LinearOptimizer.html#getFunction()">getFunction()</a></span> - Method in class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/LinearOptimizer.html" title="class in org.apache.commons.math3.optim.linear">LinearOptimizer</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/AbstractLinearOptimizer.html#getFunction()">getFunction()</a></span> - Method in class org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/AbstractLinearOptimizer.html" title="class in org.apache.commons.math3.optimization.linear">AbstractLinearOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html#getFunctionValueAccuracy()">getFunctionValueAccuracy()</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BaseAbstractUnivariateSolver</a></dt>
<dd>
<div class="block">Get the function value accuracy of the solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseUnivariateSolver.html#getFunctionValueAccuracy()">getFunctionValueAccuracy()</a></span> - Method in interface org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseUnivariateSolver.html" title="interface in org.apache.commons.math3.analysis.solvers">BaseUnivariateSolver</a></dt>
<dd>
<div class="block">Get the function value accuracy of the solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/BracketingNthOrderBrentSolverDFP.html#getFunctionValueAccuracy()">getFunctionValueAccuracy()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/BracketingNthOrderBrentSolverDFP.html" title="class in org.apache.commons.math3.dfp">BracketingNthOrderBrentSolverDFP</a></dt>
<dd>
<div class="block">Get the function accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/FuzzyKMeansClusterer.html#getFuzziness()">getFuzziness()</a></span> - Method in class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/FuzzyKMeansClusterer.html" title="class in org.apache.commons.math3.ml.clustering">FuzzyKMeansClusterer</a></dt>
<dd>
<div class="block">Returns the fuzziness factor used by this instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/GeneticAlgorithm.html#getGenerationsEvolved()">getGenerationsEvolved()</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/GeneticAlgorithm.html" title="class in org.apache.commons.math3.genetics">GeneticAlgorithm</a></dt>
<dd>
<div class="block">Returns the number of generations evolved to reach <a href="./org/apache/commons/math3/genetics/StoppingCondition.html" title="interface in org.apache.commons.math3.genetics"><code>StoppingCondition</code></a> in the last run.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/CorrelatedRandomVectorGenerator.html#getGenerator()">getGenerator()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/CorrelatedRandomVectorGenerator.html" title="class in org.apache.commons.math3.random">CorrelatedRandomVectorGenerator</a></dt>
<dd>
<div class="block">Get the underlying normalized components generator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#getGeneratorUpperBounds()">getGeneratorUpperBounds()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random">EmpiricalDistribution</a></dt>
<dd>
<div class="block">Returns a fresh copy of the array of upper bounds of the subintervals
 of [0,1] used in generating data from the empirical distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#getGeoMeanImpl()">getGeoMeanImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">MultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured geometric mean implementation</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#getGeoMeanImpl()">getGeoMeanImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured geometric mean implementation</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html#getGeoMeanImpl()">getGeoMeanImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedMultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured geometric mean implementation</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#getGeoMeanImpl()">getGeoMeanImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured geometric mean implementation</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html#getGeometricMean()">getGeometricMean()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">AggregateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the geometric mean of all the aggregated data.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getGeometricMean()">getGeometricMean()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Returns the <a href="http://www.xycoon.com/geometric_mean.htm">
 geometric mean </a> of the available values</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#getGeometricMean()">getGeometricMean()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">MultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns an array whose i<sup>th</sup> entry is the geometric mean of the
 i<sup>th</sup> entries of the arrays that have been added using
 <a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#addValue(double[])"><code>MultivariateSummaryStatistics.addValue(double[])</code></a></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StatisticalMultivariateSummary.html#getGeometricMean()">getGeometricMean()</a></span> - Method in interface org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StatisticalMultivariateSummary.html" title="interface in org.apache.commons.math3.stat.descriptive">StatisticalMultivariateSummary</a></dt>
<dd>
<div class="block">Returns an array whose i<sup>th</sup> entry is the
 geometric mean of the i<sup>th</sup> entries of the arrays
 that correspond to each multivariate sample</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#getGeometricMean()">getGeometricMean()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">Returns the geometric mean of the values that have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html#getGeometricMean()">getGeometricMean()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedMultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns an array whose i<sup>th</sup> entry is the geometric mean of the
 i<sup>th</sup> entries of the arrays that have been added using
 <a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#addValue(double[])"><code>MultivariateSummaryStatistics.addValue(double[])</code></a></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#getGeometricMean()">getGeometricMean()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the geometric mean of the values that have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getGeometricMeanImpl()">getGeometricMeanImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured geometric mean implementation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#getGlobalCurrentTime()">getGlobalCurrentTime()</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">Get the current global grid point time.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#getGlobalPreviousTime()">getGlobalPreviousTime()</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">Get the previous global grid point time.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/MultivariateOptimizer.html#getGoalType()">getGoalType()</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/MultivariateOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar">MultivariateOptimizer</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/UnivariateOptimizer.html#getGoalType()">getGoalType()</a></span> - Method in class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/UnivariateOptimizer.html" title="class in org.apache.commons.math3.optim.univariate">UnivariateOptimizer</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html#getGoalType()">getGoalType()</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/AbstractLinearOptimizer.html#getGoalType()">getGoalType()</a></span> - Method in class org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/AbstractLinearOptimizer.html" title="class in org.apache.commons.math3.optimization.linear">AbstractLinearOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/BaseAbstractUnivariateOptimizer.html#getGoalType()">getGoalType()</a></span> - Method in class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/BaseAbstractUnivariateOptimizer.html" title="class in org.apache.commons.math3.optimization.univariate">BaseAbstractUnivariateOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/QRDecomposition.html#getH()">getH()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/QRDecomposition.html" title="class in org.apache.commons.math3.linear">QRDecomposition</a></dt>
<dd>
<div class="block">Returns the Householder reflector vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/NoBracketingException.html#getHi()">getHi()</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/NoBracketingException.html" title="class in org.apache.commons.math3.exception">NoBracketingException</a></dt>
<dd>
<div class="block">Get the higher end of the interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/OutOfRangeException.html#getHi()">getHi()</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/OutOfRangeException.html" title="class in org.apache.commons.math3.exception">OutOfRangeException</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/BracketFinder.html#getHi()">getHi()</a></span> - Method in class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/BracketFinder.html" title="class in org.apache.commons.math3.optim.univariate">BracketFinder</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/BracketFinder.html#getHi()">getHi()</a></span> - Method in class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/BracketFinder.html" title="class in org.apache.commons.math3.optimization.univariate">BracketFinder</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractSubHyperplane.html#getHyperplane()">getHyperplane()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractSubHyperplane.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractSubHyperplane</a></dt>
<dd>
<div class="block">Get the underlying hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/SubHyperplane.html#getHyperplane()">getHyperplane()</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/SubHyperplane.html" title="interface in org.apache.commons.math3.geometry.partitioning">SubHyperplane</a></dt>
<dd>
<div class="block">Get the underlying hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/Neuron.html#getIdentifier()">getIdentifier()</a></span> - Method in class org.apache.commons.math3.ml.neuralnet.<a href="./org/apache/commons/math3/ml/neuralnet/Neuron.html" title="class in org.apache.commons.math3.ml.neuralnet">Neuron</a></dt>
<dd>
<div class="block">Gets the neuron's identifier.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#getIEEEFlags()">getIEEEFlags()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Get the IEEE 854 status flags.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/EigenDecomposition.html#getImagEigenvalue(int)">getImagEigenvalue(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/EigenDecomposition.html" title="class in org.apache.commons.math3.linear">EigenDecomposition</a></dt>
<dd>
<div class="block">Gets the imaginary part of the i<sup>th</sup> eigenvalue of the original
 matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/EigenDecomposition.html#getImagEigenvalues()">getImagEigenvalues()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/EigenDecomposition.html" title="class in org.apache.commons.math3.linear">EigenDecomposition</a></dt>
<dd>
<div class="block">Gets a copy of the imaginary parts of the eigenvalues of the original
 matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#getImaginary()">getImaginary()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Access the imaginary part.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/RootsOfUnity.html#getImaginary(int)">getImaginary(int)</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/RootsOfUnity.html" title="class in org.apache.commons.math3.complex">RootsOfUnity</a></dt>
<dd>
<div class="block">Get the imaginary part of the <code>k</code>-th <code>n</code>-th root of unity.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/ComplexFormat.html#getImaginaryCharacter()">getImaginaryCharacter()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/ComplexFormat.html" title="class in org.apache.commons.math3.complex">ComplexFormat</a></dt>
<dd>
<div class="block">Access the imaginaryCharacter.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/ComplexFormat.html#getImaginaryFormat()">getImaginaryFormat()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/ComplexFormat.html" title="class in org.apache.commons.math3.complex">ComplexFormat</a></dt>
<dd>
<div class="block">Access the imaginaryFormat.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFractionFormat.html#getImproperInstance()">getImproperInstance()</a></span> - Static method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFractionFormat.html" title="class in org.apache.commons.math3.fraction">BigFractionFormat</a></dt>
<dd>
<div class="block">Returns the default complex format for the current locale.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFractionFormat.html#getImproperInstance(java.util.Locale)">getImproperInstance(Locale)</a></span> - Static method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFractionFormat.html" title="class in org.apache.commons.math3.fraction">BigFractionFormat</a></dt>
<dd>
<div class="block">Returns the default complex format for the given locale.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/FractionFormat.html#getImproperInstance()">getImproperInstance()</a></span> - Static method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/FractionFormat.html" title="class in org.apache.commons.math3.fraction">FractionFormat</a></dt>
<dd>
<div class="block">Returns the default complex format for the current locale.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/FractionFormat.html#getImproperInstance(java.util.Locale)">getImproperInstance(Locale)</a></span> - Static method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/FractionFormat.html" title="class in org.apache.commons.math3.fraction">FractionFormat</a></dt>
<dd>
<div class="block">Returns the default complex format for the given locale.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/Vertex.html#getIncoming()">getIncoming()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/Vertex.html" title="class in org.apache.commons.math3.geometry.spherical.twod">Vertex</a></dt>
<dd>
<div class="block">Get incoming edge.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/NonMonotonicSequenceException.html#getIndex()">getIndex()</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/NonMonotonicSequenceException.html" title="class in org.apache.commons.math3.exception">NonMonotonicSequenceException</a></dt>
<dd>
<div class="block">Get the index of the wrong value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.OpenMapEntry.html#getIndex()">getIndex()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.OpenMapEntry.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector.OpenMapEntry</a></dt>
<dd>
<div class="block">Get the index of the entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.Entry.html#getIndex()">getIndex()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.Entry.html" title="class in org.apache.commons.math3.linear">RealVector.Entry</a></dt>
<dd>
<div class="block">Get the index of the entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Interval.html#getInf()">getInf()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Interval.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Interval</a></dt>
<dd>
<div class="block">Get the lower bound of the interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html#getInf()">getInf()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">IntervalsSet</a></dt>
<dd>
<div class="block">Get the lowest value belonging to the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/Arc.html#getInf()">getInf()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/Arc.html" title="class in org.apache.commons.math3.geometry.spherical.oned">Arc</a></dt>
<dd>
<div class="block">Get the lower angular bound of the arc.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/filter/DefaultProcessModel.html#getInitialErrorCovariance()">getInitialErrorCovariance()</a></span> - Method in class org.apache.commons.math3.filter.<a href="./org/apache/commons/math3/filter/DefaultProcessModel.html" title="class in org.apache.commons.math3.filter">DefaultProcessModel</a></dt>
<dd>
<div class="block">Returns the initial error covariance matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/filter/ProcessModel.html#getInitialErrorCovariance()">getInitialErrorCovariance()</a></span> - Method in interface org.apache.commons.math3.filter.<a href="./org/apache/commons/math3/filter/ProcessModel.html" title="interface in org.apache.commons.math3.filter">ProcessModel</a></dt>
<dd>
<div class="block">Returns the initial error covariance matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/InitialGuess.html#getInitialGuess()">getInitialGuess()</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/InitialGuess.html" title="class in org.apache.commons.math3.optim">InitialGuess</a></dt>
<dd>
<div class="block">Gets the initial guess.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/InitialGuess.html#getInitialGuess()">getInitialGuess()</a></span> - Method in class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/InitialGuess.html" title="class in org.apache.commons.math3.optimization">InitialGuess</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Gets the initial guess.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/filter/DefaultProcessModel.html#getInitialStateEstimate()">getInitialStateEstimate()</a></span> - Method in class org.apache.commons.math3.filter.<a href="./org/apache/commons/math3/filter/DefaultProcessModel.html" title="class in org.apache.commons.math3.filter">DefaultProcessModel</a></dt>
<dd>
<div class="block">Returns the initial state estimation vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/filter/ProcessModel.html#getInitialStateEstimate()">getInitialStateEstimate()</a></span> - Method in interface org.apache.commons.math3.filter.<a href="./org/apache/commons/math3/filter/ProcessModel.html" title="interface in org.apache.commons.math3.filter">ProcessModel</a></dt>
<dd>
<div class="block">Returns the initial state estimation vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LevenbergMarquardtOptimizer.html#getInitialStepBoundFactor()">getInitialStepBoundFactor()</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LevenbergMarquardtOptimizer.html" title="class in org.apache.commons.math3.fitting.leastsquares">LevenbergMarquardtOptimizer</a></dt>
<dd>
<div class="block">Gets the value of a tuning parameter.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ContinuousOutputModel.html#getInitialTime()">getInitialTime()</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ContinuousOutputModel.html" title="class in org.apache.commons.math3.ode">ContinuousOutputModel</a></dt>
<dd>
<div class="block">Get the initial integration time.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html#getInsideArc(org.apache.commons.math3.geometry.spherical.twod.Circle)">getInsideArc(Circle)</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html" title="class in org.apache.commons.math3.geometry.spherical.twod">Circle</a></dt>
<dd>
<div class="block">Get the arc of the instance that lies inside the other circle.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/ComplexField.html#getInstance()">getInstance()</a></span> - Static method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/ComplexField.html" title="class in org.apache.commons.math3.complex">ComplexField</a></dt>
<dd>
<div class="block">Get the unique instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/ComplexFormat.html#getInstance()">getInstance()</a></span> - Static method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/ComplexFormat.html" title="class in org.apache.commons.math3.complex">ComplexFormat</a></dt>
<dd>
<div class="block">Returns the default complex format for the current locale.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/ComplexFormat.html#getInstance(java.util.Locale)">getInstance(Locale)</a></span> - Static method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/ComplexFormat.html" title="class in org.apache.commons.math3.complex">ComplexFormat</a></dt>
<dd>
<div class="block">Returns the default complex format for the given locale.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/ComplexFormat.html#getInstance(java.lang.String, java.util.Locale)">getInstance(String, Locale)</a></span> - Static method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/ComplexFormat.html" title="class in org.apache.commons.math3.complex">ComplexFormat</a></dt>
<dd>
<div class="block">Returns the default complex format for the given locale.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFractionField.html#getInstance()">getInstance()</a></span> - Static method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFractionField.html" title="class in org.apache.commons.math3.fraction">BigFractionField</a></dt>
<dd>
<div class="block">Get the unique instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/FractionField.html#getInstance()">getInstance()</a></span> - Static method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/FractionField.html" title="class in org.apache.commons.math3.fraction">FractionField</a></dt>
<dd>
<div class="block">Get the unique instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Euclidean1D.html#getInstance()">getInstance()</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Euclidean1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Euclidean1D</a></dt>
<dd>
<div class="block">Get the unique instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1DFormat.html#getInstance()">getInstance()</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1DFormat.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1DFormat</a></dt>
<dd>
<div class="block">Returns the default 1D vector format for the current locale.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1DFormat.html#getInstance(java.util.Locale)">getInstance(Locale)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1DFormat.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1DFormat</a></dt>
<dd>
<div class="block">Returns the default 1D vector format for the given locale.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Euclidean3D.html#getInstance()">getInstance()</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Euclidean3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Euclidean3D</a></dt>
<dd>
<div class="block">Get the unique instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3DFormat.html#getInstance()">getInstance()</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3DFormat.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3DFormat</a></dt>
<dd>
<div class="block">Returns the default 3D vector format for the current locale.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3DFormat.html#getInstance(java.util.Locale)">getInstance(Locale)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3DFormat.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3DFormat</a></dt>
<dd>
<div class="block">Returns the default 3D vector format for the given locale.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Euclidean2D.html#getInstance()">getInstance()</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Euclidean2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Euclidean2D</a></dt>
<dd>
<div class="block">Get the unique instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2DFormat.html#getInstance()">getInstance()</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2DFormat.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2DFormat</a></dt>
<dd>
<div class="block">Returns the default 2D vector format for the current locale.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2DFormat.html#getInstance(java.util.Locale)">getInstance(Locale)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2DFormat.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2DFormat</a></dt>
<dd>
<div class="block">Returns the default 2D vector format for the given locale.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/Sphere1D.html#getInstance()">getInstance()</a></span> - Static method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/Sphere1D.html" title="class in org.apache.commons.math3.geometry.spherical.oned">Sphere1D</a></dt>
<dd>
<div class="block">Get the unique instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/Sphere2D.html#getInstance()">getInstance()</a></span> - Static method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/Sphere2D.html" title="class in org.apache.commons.math3.geometry.spherical.twod">Sphere2D</a></dt>
<dd>
<div class="block">Get the unique instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrixFormat.html#getInstance()">getInstance()</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrixFormat.html" title="class in org.apache.commons.math3.linear">RealMatrixFormat</a></dt>
<dd>
<div class="block">Returns the default real vector format for the current locale.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrixFormat.html#getInstance(java.util.Locale)">getInstance(Locale)</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrixFormat.html" title="class in org.apache.commons.math3.linear">RealMatrixFormat</a></dt>
<dd>
<div class="block">Returns the default real vector format for the given locale.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVectorFormat.html#getInstance()">getInstance()</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVectorFormat.html" title="class in org.apache.commons.math3.linear">RealVectorFormat</a></dt>
<dd>
<div class="block">Returns the default real vector format for the current locale.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVectorFormat.html#getInstance(java.util.Locale)">getInstance(Locale)</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVectorFormat.html" title="class in org.apache.commons.math3.linear">RealVectorFormat</a></dt>
<dd>
<div class="block">Returns the default real vector format for the given locale.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdamsNordsieckTransformer.html#getInstance(int)">getInstance(int)</a></span> - Static method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdamsNordsieckTransformer.html" title="class in org.apache.commons.math3.ode.nonstiff">AdamsNordsieckTransformer</a></dt>
<dd>
<div class="block">Get the Nordsieck transformer for a given number of steps.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/DummyStepHandler.html#getInstance()">getInstance()</a></span> - Static method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/DummyStepHandler.html" title="class in org.apache.commons.math3.ode.sampling">DummyStepHandler</a></dt>
<dd>
<div class="block">Get the only instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigRealField.html#getInstance()">getInstance()</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigRealField.html" title="class in org.apache.commons.math3.util">BigRealField</a></dt>
<dd>
<div class="block">Get the unique instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64Field.html#getInstance()">getInstance()</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64Field.html" title="class in org.apache.commons.math3.util">Decimal64Field</a></dt>
<dd>
<div class="block">Returns the unique instance of this class.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html#getIntercept()">getIntercept()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html" title="class in org.apache.commons.math3.stat.regression">SimpleRegression</a></dt>
<dd>
<div class="block">Returns the intercept of the estimated regression line, if
 <a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html#hasIntercept()"><code>SimpleRegression.hasIntercept()</code></a> is true; otherwise 0.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html#getInterceptStdErr()">getInterceptStdErr()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html" title="class in org.apache.commons.math3.stat.regression">SimpleRegression</a></dt>
<dd>
<div class="block">Returns the <a href="http://www.xycoon.com/standarderrorb0.htm">
 standard error of the intercept estimate</a>,
 usually denoted s(b0).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#getInternalValues()">getInternalValues()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#getInterpolatedDerivatives()">getInterpolatedDerivatives()</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">Get the derivatives of the state vector of the interpolated point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/StepInterpolator.html#getInterpolatedDerivatives()">getInterpolatedDerivatives()</a></span> - Method in interface org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/StepInterpolator.html" title="interface in org.apache.commons.math3.ode.sampling">StepInterpolator</a></dt>
<dd>
<div class="block">Get the derivatives of the state vector of the interpolated point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#getInterpolatedSecondaryDerivatives(int)">getInterpolatedSecondaryDerivatives(int)</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">Get the interpolated secondary derivatives corresponding to the secondary equations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/StepInterpolator.html#getInterpolatedSecondaryDerivatives(int)">getInterpolatedSecondaryDerivatives(int)</a></span> - Method in interface org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/StepInterpolator.html" title="interface in org.apache.commons.math3.ode.sampling">StepInterpolator</a></dt>
<dd>
<div class="block">Get the interpolated secondary derivatives corresponding to the secondary equations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ContinuousOutputModel.html#getInterpolatedSecondaryState(int)">getInterpolatedSecondaryState(int)</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ContinuousOutputModel.html" title="class in org.apache.commons.math3.ode">ContinuousOutputModel</a></dt>
<dd>
<div class="block">Get the interpolated secondary state corresponding to the secondary equations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#getInterpolatedSecondaryState(int)">getInterpolatedSecondaryState(int)</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">Get the interpolated secondary state corresponding to the secondary equations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/StepInterpolator.html#getInterpolatedSecondaryState(int)">getInterpolatedSecondaryState(int)</a></span> - Method in interface org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/StepInterpolator.html" title="interface in org.apache.commons.math3.ode.sampling">StepInterpolator</a></dt>
<dd>
<div class="block">Get the interpolated secondary state corresponding to the secondary equations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ContinuousOutputModel.html#getInterpolatedState()">getInterpolatedState()</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ContinuousOutputModel.html" title="class in org.apache.commons.math3.ode">ContinuousOutputModel</a></dt>
<dd>
<div class="block">Get the state vector of the interpolated point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#getInterpolatedState()">getInterpolatedState()</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">Get the state vector of the interpolated point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/StepInterpolator.html#getInterpolatedState()">getInterpolatedState()</a></span> - Method in interface org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/StepInterpolator.html" title="interface in org.apache.commons.math3.ode.sampling">StepInterpolator</a></dt>
<dd>
<div class="block">Get the state vector of the interpolated point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/NordsieckStepInterpolator.html#getInterpolatedStateVariation()">getInterpolatedStateVariation()</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/NordsieckStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">NordsieckStepInterpolator</a></dt>
<dd>
<div class="block">Get the state vector variation from current to interpolated state.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ContinuousOutputModel.html#getInterpolatedTime()">getInterpolatedTime()</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ContinuousOutputModel.html" title="class in org.apache.commons.math3.ode">ContinuousOutputModel</a></dt>
<dd>
<div class="block">Get the time of the interpolated point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#getInterpolatedTime()">getInterpolatedTime()</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">Get the time of the interpolated point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/StepInterpolator.html#getInterpolatedTime()">getInterpolatedTime()</a></span> - Method in interface org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/StepInterpolator.html" title="interface in org.apache.commons.math3.ode.sampling">StepInterpolator</a></dt>
<dd>
<div class="block">Get the time of the interpolated point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionLagrangeForm.html#getInterpolatingPoints()">getInterpolatingPoints()</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionLagrangeForm.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunctionLagrangeForm</a></dt>
<dd>
<div class="block">Returns a copy of the interpolating points array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionLagrangeForm.html#getInterpolatingValues()">getInterpolatingValues()</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionLagrangeForm.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunctionLagrangeForm</a></dt>
<dd>
<div class="block">Returns a copy of the interpolating values array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Quaternion.html#getInverse()">getInverse()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex">Quaternion</a></dt>
<dd>
<div class="block">Returns the inverse of this instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DecompositionSolver.html#getInverse()">getInverse()</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DecompositionSolver.html" title="interface in org.apache.commons.math3.linear">DecompositionSolver</a></dt>
<dd>
<div class="block">Get the <a href="http://en.wikipedia.org/wiki/Moore%E2%80%93Penrose_pseudoinverse">pseudo-inverse</a>
 of the decomposed matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldDecompositionSolver.html#getInverse()">getInverse()</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldDecompositionSolver.html" title="interface in org.apache.commons.math3.linear">FieldDecompositionSolver</a></dt>
<dd>
<div class="block">Get the inverse (or pseudo-inverse) of the decomposed matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SingularValueDecomposition.html#getInverseConditionNumber()">getInverseConditionNumber()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SingularValueDecomposition.html" title="class in org.apache.commons.math3.linear">SingularValueDecomposition</a></dt>
<dd>
<div class="block">Computes the inverse of the condition number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresAdapter.html#getIterationCounter()">getIterationCounter()</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresAdapter.html" title="class in org.apache.commons.math3.fitting.leastsquares">LeastSquaresAdapter</a></dt>
<dd>
<div class="block">Get a independent Incrementor that counts up to the maximum number of iterations
 and then throws an exception.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/AbstractOptimizationProblem.html#getIterationCounter()">getIterationCounter()</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/AbstractOptimizationProblem.html" title="class in org.apache.commons.math3.optim">AbstractOptimizationProblem</a></dt>
<dd>
<div class="block">Get a independent Incrementor that counts up to the maximum number of iterations
 and then throws an exception.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/OptimizationProblem.html#getIterationCounter()">getIterationCounter()</a></span> - Method in interface org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/OptimizationProblem.html" title="interface in org.apache.commons.math3.optim">OptimizationProblem</a></dt>
<dd>
<div class="block">Get a independent Incrementor that counts up to the maximum number of iterations
 and then throws an exception.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/IterativeLinearSolver.html#getIterationManager()">getIterationManager()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/IterativeLinearSolver.html" title="class in org.apache.commons.math3.linear">IterativeLinearSolver</a></dt>
<dd>
<div class="block">Returns the iteration manager attached to this solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html#getIterations()">getIterations()</a></span> - Method in class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">BaseAbstractUnivariateIntegrator</a></dt>
<dd>
<div class="block">Get the number of iterations of the last run of the integrator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/UnivariateIntegrator.html#getIterations()">getIterations()</a></span> - Method in interface org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/UnivariateIntegrator.html" title="interface in org.apache.commons.math3.analysis.integration">UnivariateIntegrator</a></dt>
<dd>
<div class="block">Get the number of iterations of the last run of the integrator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresOptimizer.Optimum.html#getIterations()">getIterations()</a></span> - Method in interface org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresOptimizer.Optimum.html" title="interface in org.apache.commons.math3.fitting.leastsquares">LeastSquaresOptimizer.Optimum</a></dt>
<dd>
<div class="block">Get the number of times the algorithm iterated in order to produce this
 optimum.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/BaseOptimizer.html#getIterations()">getIterations()</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/BaseOptimizer.html" title="class in org.apache.commons.math3.optim">BaseOptimizer</a></dt>
<dd>
<div class="block">Gets the number of iterations performed by the algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/AbstractLinearOptimizer.html#getIterations()">getIterations()</a></span> - Method in class org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/AbstractLinearOptimizer.html" title="class in org.apache.commons.math3.optimization.linear">AbstractLinearOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the number of iterations realized by the algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/LinearOptimizer.html#getIterations()">getIterations()</a></span> - Method in interface org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/LinearOptimizer.html" title="interface in org.apache.commons.math3.optimization.linear">LinearOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the number of iterations realized by the algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/IterationEvent.html#getIterations()">getIterations()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/IterationEvent.html" title="class in org.apache.commons.math3.util">IterationEvent</a></dt>
<dd>
<div class="block">Returns the number of iterations performed at the time <code>this</code> event
 is created.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/IterationManager.html#getIterations()">getIterations()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/IterationManager.html" title="class in org.apache.commons.math3.util">IterationManager</a></dt>
<dd>
<div class="block">Returns the number of iterations of this solver, 0 if no iterations has
 been performed yet.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.Evaluation.html#getJacobian()">getJacobian()</a></span> - Method in interface org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.Evaluation.html" title="interface in org.apache.commons.math3.fitting.leastsquares">LeastSquaresProblem.Evaluation</a></dt>
<dd>
<div class="block">Get the weighted Jacobian matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#getJacobianEvaluations()">getJacobianEvaluations()</a></span> - Method in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/FuzzyKMeansClusterer.html#getK()">getK()</a></span> - Method in class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/FuzzyKMeansClusterer.html" title="class in org.apache.commons.math3.ml.clustering">FuzzyKMeansClusterer</a></dt>
<dd>
<div class="block">Return the number of clusters this instance will use.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/KMeansPlusPlusClusterer.html#getK()">getK()</a></span> - Method in class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/KMeansPlusPlusClusterer.html" title="class in org.apache.commons.math3.ml.clustering">KMeansPlusPlusClusterer</a></dt>
<dd>
<div class="block">Return the number of clusters this instance will use.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Combinations.html#getK()">getK()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Combinations.html" title="class in org.apache.commons.math3.util">Combinations</a></dt>
<dd>
<div class="block">Gets the number of elements in each combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#getKernel(org.apache.commons.math3.stat.descriptive.SummaryStatistics)">getKernel(SummaryStatistics)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random">EmpiricalDistribution</a></dt>
<dd>
<div class="block">The within-bin smoothing kernel.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Pair.html#getKey()">getKey()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Pair.html" title="class in org.apache.commons.math3.util">Pair</a></dt>
<dd>
<div class="block">Get the key.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/util/ExceptionContext.html#getKeys()">getKeys()</a></span> - Method in class org.apache.commons.math3.exception.util.<a href="./org/apache/commons/math3/exception/util/ExceptionContext.html" title="class in org.apache.commons.math3.exception.util">ExceptionContext</a></dt>
<dd>
<div class="block">Gets all the keys stored in the exception</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialSplineFunction.html#getKnots()">getKnots()</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialSplineFunction.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialSplineFunction</a></dt>
<dd>
<div class="block">Get an array copy of the knot points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getKurtosis()">getKurtosis()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Returns the Kurtosis of the available values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getKurtosisImpl()">getKurtosisImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured kurtosis implementation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/CholeskyDecomposition.html#getL()">getL()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/CholeskyDecomposition.html" title="class in org.apache.commons.math3.linear">CholeskyDecomposition</a></dt>
<dd>
<div class="block">Returns the matrix L of the decomposition.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldLUDecomposition.html#getL()">getL()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldLUDecomposition.html" title="class in org.apache.commons.math3.linear">FieldLUDecomposition</a></dt>
<dd>
<div class="block">Returns the matrix L of the decomposition.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/LUDecomposition.html#getL()">getL()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/LUDecomposition.html" title="class in org.apache.commons.math3.linear">LUDecomposition</a></dt>
<dd>
<div class="block">Returns the matrix L of the decomposition.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#getL1Distance(org.apache.commons.math3.linear.RealVector)">getL1Distance(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Distance between two vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#getL1Distance(org.apache.commons.math3.linear.OpenMapRealVector)">getL1Distance(OpenMapRealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Distance between two vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#getL1Distance(org.apache.commons.math3.linear.RealVector)">getL1Distance(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Distance between two vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#getL1Distance(org.apache.commons.math3.linear.RealVector)">getL1Distance(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Distance between two vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#getL1Norm()">getL1Norm()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Returns the L<sub>1</sub> norm of the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#getL1Norm()">getL1Norm()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Returns the L<sub>1</sub> norm of the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/utilities/AVLTree.html#getLargest()">getLargest()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.utilities.<a href="./org/apache/commons/math3/geometry/partitioning/utilities/AVLTree.html" title="class in org.apache.commons.math3.geometry.partitioning.utilities">AVLTree</a></dt>
<dd>
<div class="block">Get the node whose element is the largest one in the tree.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/AbstractListChromosome.html#getLength()">getLength()</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/AbstractListChromosome.html" title="class in org.apache.commons.math3.genetics">AbstractListChromosome</a></dt>
<dd>
<div class="block">Returns the length of the chromosome.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Interval.html#getLength()">getLength()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Interval.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Interval</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/geometry/euclidean/oned/Interval.html#getSize()"><code>Interval.getSize()</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/Edge.html#getLength()">getLength()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/Edge.html" title="class in org.apache.commons.math3.geometry.spherical.twod">Edge</a></dt>
<dd>
<div class="block">Get the length of the arc.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Segment.html#getLine()">getLine()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Segment.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Segment</a></dt>
<dd>
<div class="block">Get the line containing the segment.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Segment.html#getLine()">getLine()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Segment.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Segment</a></dt>
<dd>
<div class="block">Get the line containing the segment.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/hull/ConvexHull2D.html#getLineSegments()">getLineSegments()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.hull.<a href="./org/apache/commons/math3/geometry/euclidean/twod/hull/ConvexHull2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod.hull">ConvexHull2D</a></dt>
<dd>
<div class="block">Get the line segments of the convex hull, ordered.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#getLInfDistance(org.apache.commons.math3.linear.RealVector)">getLInfDistance(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Distance between two vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#getLInfDistance(org.apache.commons.math3.linear.RealVector)">getLInfDistance(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Distance between two vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#getLInfDistance(org.apache.commons.math3.linear.RealVector)">getLInfDistance(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Distance between two vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#getLInfNorm()">getLInfNorm()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Returns the L<sub>&infin;</sub> norm of the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#getLInfNorm()">getLInfNorm()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Returns the L<sub>&infin;</sub> norm of the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#getLn10()">getLn10()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Get the constant ln(10).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#getLn2()">getLn2()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Get the constant ln(2).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#getLn2Split()">getLn2Split()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Get the constant ln(2) split in two pieces.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#getLn5()">getLn5()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Get the constant ln(5).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#getLn5Split()">getLn5Split()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Get the constant ln(5) split in two pieces.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/NoBracketingException.html#getLo()">getLo()</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/NoBracketingException.html" title="class in org.apache.commons.math3.exception">NoBracketingException</a></dt>
<dd>
<div class="block">Get the lower end of the interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/OutOfRangeException.html#getLo()">getLo()</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/OutOfRangeException.html" title="class in org.apache.commons.math3.exception">OutOfRangeException</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/BracketFinder.html#getLo()">getLo()</a></span> - Method in class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/BracketFinder.html" title="class in org.apache.commons.math3.optim.univariate">BracketFinder</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/BracketFinder.html#getLo()">getLo()</a></span> - Method in class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/BracketFinder.html" title="class in org.apache.commons.math3.optimization.univariate">BracketFinder</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MathArithmeticException.html#getLocalizedMessage()">getLocalizedMessage()</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MathArithmeticException.html" title="class in org.apache.commons.math3.exception">MathArithmeticException</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MathIllegalArgumentException.html#getLocalizedMessage()">getLocalizedMessage()</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MathIllegalArgumentException.html" title="class in org.apache.commons.math3.exception">MathIllegalArgumentException</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MathIllegalStateException.html#getLocalizedMessage()">getLocalizedMessage()</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MathIllegalStateException.html" title="class in org.apache.commons.math3.exception">MathIllegalStateException</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MathRuntimeException.html#getLocalizedMessage()">getLocalizedMessage()</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MathRuntimeException.html" title="class in org.apache.commons.math3.exception">MathRuntimeException</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MathUnsupportedOperationException.html#getLocalizedMessage()">getLocalizedMessage()</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MathUnsupportedOperationException.html" title="class in org.apache.commons.math3.exception">MathUnsupportedOperationException</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/util/ExceptionContext.html#getLocalizedMessage()">getLocalizedMessage()</a></span> - Method in class org.apache.commons.math3.exception.util.<a href="./org/apache/commons/math3/exception/util/ExceptionContext.html" title="class in org.apache.commons.math3.exception.util">ExceptionContext</a></dt>
<dd>
<div class="block">Gets the message in the default locale.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/util/DummyLocalizable.html#getLocalizedString(java.util.Locale)">getLocalizedString(Locale)</a></span> - Method in class org.apache.commons.math3.exception.util.<a href="./org/apache/commons/math3/exception/util/DummyLocalizable.html" title="class in org.apache.commons.math3.exception.util">DummyLocalizable</a></dt>
<dd>
<div class="block">Gets the localized string.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/util/Localizable.html#getLocalizedString(java.util.Locale)">getLocalizedString(Locale)</a></span> - Method in interface org.apache.commons.math3.exception.util.<a href="./org/apache/commons/math3/exception/util/Localizable.html" title="interface in org.apache.commons.math3.exception.util">Localizable</a></dt>
<dd>
<div class="block">Gets the localized string.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/util/LocalizedFormats.html#getLocalizedString(java.util.Locale)">getLocalizedString(Locale)</a></span> - Method in enum org.apache.commons.math3.exception.util.<a href="./org/apache/commons/math3/exception/util/LocalizedFormats.html" title="enum in org.apache.commons.math3.exception.util">LocalizedFormats</a></dt>
<dd>
<div class="block">Gets the localized string.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LevyDistribution.html#getLocation()">getLocation()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LevyDistribution.html" title="class in org.apache.commons.math3.distribution">LevyDistribution</a></dt>
<dd>
<div class="block">Get the location parameter of the distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/OrientedPoint.html#getLocation()">getLocation()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/OrientedPoint.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">OrientedPoint</a></dt>
<dd>
<div class="block">Get the hyperplane location on the real line.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/LimitAngle.html#getLocation()">getLocation()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/LimitAngle.html" title="class in org.apache.commons.math3.geometry.spherical.oned">LimitAngle</a></dt>
<dd>
<div class="block">Get the hyperplane location on the circle.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/Vertex.html#getLocation()">getLocation()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/Vertex.html" title="class in org.apache.commons.math3.geometry.spherical.twod">Vertex</a></dt>
<dd>
<div class="block">Get Vertex location.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/fitting/MultivariateNormalMixtureExpectationMaximization.html#getLogLikelihood()">getLogLikelihood()</a></span> - Method in class org.apache.commons.math3.distribution.fitting.<a href="./org/apache/commons/math3/distribution/fitting/MultivariateNormalMixtureExpectationMaximization.html" title="class in org.apache.commons.math3.distribution.fitting">MultivariateNormalMixtureExpectationMaximization</a></dt>
<dd>
<div class="block">Gets the log likelihood of the data under the fitted model.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Interval.html#getLower()">getLower()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Interval.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Interval</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/geometry/euclidean/oned/Interval.html#getInf()"><code>Interval.getInf()</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/SimpleBounds.html#getLower()">getLower()</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/SimpleBounds.html" title="class in org.apache.commons.math3.optim">SimpleBounds</a></dt>
<dd>
<div class="block">Gets the lower bounds.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/SimpleBounds.html#getLower()">getLower()</a></span> - Method in class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/SimpleBounds.html" title="class in org.apache.commons.math3.optimization">SimpleBounds</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Gets the lower bounds.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/BaseMultivariateOptimizer.html#getLowerBound()">getLowerBound()</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/BaseMultivariateOptimizer.html" title="class in org.apache.commons.math3.optim">BaseMultivariateOptimizer</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html#getLowerBound()">getLowerBound()</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/interval/ConfidenceInterval.html#getLowerBound()">getLowerBound()</a></span> - Method in class org.apache.commons.math3.stat.interval.<a href="./org/apache/commons/math3/stat/interval/ConfidenceInterval.html" title="class in org.apache.commons.math3.stat.interval">ConfidenceInterval</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/CholeskyDecomposition.html#getLT()">getLT()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/CholeskyDecomposition.html" title="class in org.apache.commons.math3.linear">CholeskyDecomposition</a></dt>
<dd>
<div class="block">Returns the transpose of the matrix L of the decomposition.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html#getMatrix()">getMatrix()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldRotation</a></dt>
<dd>
<div class="block">Get the 3X3 matrix corresponding to the instance</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html#getMatrix()">getMatrix()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Rotation</a></dt>
<dd>
<div class="block">Get the 3X3 matrix corresponding to the instance</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html#getMax()">getMax()</a></span> - Method in class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">BaseAbstractUnivariateIntegrator</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html#getMax()">getMax()</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BaseAbstractUnivariateSolver</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MaxCountExceededException.html#getMax()">getMax()</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MaxCountExceededException.html" title="class in org.apache.commons.math3.exception">MaxCountExceededException</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/NumberIsTooLargeException.html#getMax()">getMax()</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/NumberIsTooLargeException.html" title="class in org.apache.commons.math3.exception">NumberIsTooLargeException</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/SearchInterval.html#getMax()">getMax()</a></span> - Method in class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/SearchInterval.html" title="class in org.apache.commons.math3.optim.univariate">SearchInterval</a></dt>
<dd>
<div class="block">Gets the upper bound.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/UnivariateOptimizer.html#getMax()">getMax()</a></span> - Method in class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/UnivariateOptimizer.html" title="class in org.apache.commons.math3.optim.univariate">UnivariateOptimizer</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/BaseAbstractUnivariateOptimizer.html#getMax()">getMax()</a></span> - Method in class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/BaseAbstractUnivariateOptimizer.html" title="class in org.apache.commons.math3.optimization.univariate">BaseAbstractUnivariateOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html#getMax()">getMax()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">AggregateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the maximum of the available values</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getMax()">getMax()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Returns the maximum of the available values</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#getMax()">getMax()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">MultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns an array whose i<sup>th</sup> entry is the maximum of the
 i<sup>th</sup> entries of the arrays that have been added using
 <a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#addValue(double[])"><code>MultivariateSummaryStatistics.addValue(double[])</code></a></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StatisticalMultivariateSummary.html#getMax()">getMax()</a></span> - Method in interface org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StatisticalMultivariateSummary.html" title="interface in org.apache.commons.math3.stat.descriptive">StatisticalMultivariateSummary</a></dt>
<dd>
<div class="block">Returns an array whose i<sup>th</sup> entry is the
 maximum of the i<sup>th</sup> entries of the arrays
 that correspond to each multivariate sample</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummary.html#getMax()">getMax()</a></span> - Method in interface org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummary.html" title="interface in org.apache.commons.math3.stat.descriptive">StatisticalSummary</a></dt>
<dd>
<div class="block">Returns the maximum of the available values</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummaryValues.html#getMax()">getMax()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummaryValues.html" title="class in org.apache.commons.math3.stat.descriptive">StatisticalSummaryValues</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#getMax()">getMax()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">Returns the maximum of the values that have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html#getMax()">getMax()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedMultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns an array whose i<sup>th</sup> entry is the maximum of the
 i<sup>th</sup> entries of the arrays that have been added using
 <a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#addValue(double[])"><code>MultivariateSummaryStatistics.addValue(double[])</code></a></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#getMax()">getMax()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the maximum of the values that have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/events/EventState.html#getMaxCheckInterval()">getMaxCheckInterval()</a></span> - Method in class org.apache.commons.math3.ode.events.<a href="./org/apache/commons/math3/ode/events/EventState.html" title="class in org.apache.commons.math3.ode.events">EventState</a></dt>
<dd>
<div class="block">Get the maximal time interval between events handler checks.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/MaxEval.html#getMaxEval()">getMaxEval()</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/MaxEval.html" title="class in org.apache.commons.math3.optim">MaxEval</a></dt>
<dd>
<div class="block">Gets the maximum number of evaluations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html#getMaxEvaluations()">getMaxEvaluations()</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BaseAbstractUnivariateSolver</a></dt>
<dd>
<div class="block">Get the maximum number of function evaluations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseUnivariateSolver.html#getMaxEvaluations()">getMaxEvaluations()</a></span> - Method in interface org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseUnivariateSolver.html" title="interface in org.apache.commons.math3.analysis.solvers">BaseUnivariateSolver</a></dt>
<dd>
<div class="block">Get the maximum number of function evaluations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/BracketingNthOrderBrentSolverDFP.html#getMaxEvaluations()">getMaxEvaluations()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/BracketingNthOrderBrentSolverDFP.html" title="class in org.apache.commons.math3.dfp">BracketingNthOrderBrentSolverDFP</a></dt>
<dd>
<div class="block">Get the maximal number of function evaluations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractIntegrator.html#getMaxEvaluations()">getMaxEvaluations()</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractIntegrator.html" title="class in org.apache.commons.math3.ode">AbstractIntegrator</a></dt>
<dd>
<div class="block">Get the maximal number of functions evaluations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ODEIntegrator.html#getMaxEvaluations()">getMaxEvaluations()</a></span> - Method in interface org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ODEIntegrator.html" title="interface in org.apache.commons.math3.ode">ODEIntegrator</a></dt>
<dd>
<div class="block">Get the maximal number of functions evaluations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/BaseOptimizer.html#getMaxEvaluations()">getMaxEvaluations()</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/BaseOptimizer.html" title="class in org.apache.commons.math3.optim">BaseOptimizer</a></dt>
<dd>
<div class="block">Gets the maximal number of function evaluations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/BracketFinder.html#getMaxEvaluations()">getMaxEvaluations()</a></span> - Method in class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/BracketFinder.html" title="class in org.apache.commons.math3.optim.univariate">BracketFinder</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/BaseMultivariateMultiStartOptimizer.html#getMaxEvaluations()">getMaxEvaluations()</a></span> - Method in class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/BaseMultivariateMultiStartOptimizer.html" title="class in org.apache.commons.math3.optimization">BaseMultivariateMultiStartOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the maximal number of function evaluations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/BaseMultivariateVectorMultiStartOptimizer.html#getMaxEvaluations()">getMaxEvaluations()</a></span> - Method in class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/BaseMultivariateVectorMultiStartOptimizer.html" title="class in org.apache.commons.math3.optimization">BaseMultivariateVectorMultiStartOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the maximal number of function evaluations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/BaseOptimizer.html#getMaxEvaluations()">getMaxEvaluations()</a></span> - Method in interface org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/BaseOptimizer.html" title="interface in org.apache.commons.math3.optimization">BaseOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the maximal number of function evaluations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html#getMaxEvaluations()">getMaxEvaluations()</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the maximal number of function evaluations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html#getMaxEvaluations()">getMaxEvaluations()</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateVectorOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the maximal number of function evaluations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/BaseAbstractUnivariateOptimizer.html#getMaxEvaluations()">getMaxEvaluations()</a></span> - Method in class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/BaseAbstractUnivariateOptimizer.html" title="class in org.apache.commons.math3.optimization.univariate">BaseAbstractUnivariateOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the maximal number of function evaluations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/BracketFinder.html#getMaxEvaluations()">getMaxEvaluations()</a></span> - Method in class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/BracketFinder.html" title="class in org.apache.commons.math3.optimization.univariate">BracketFinder</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/UnivariateMultiStartOptimizer.html#getMaxEvaluations()">getMaxEvaluations()</a></span> - Method in class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/UnivariateMultiStartOptimizer.html" title="class in org.apache.commons.math3.optimization.univariate">UnivariateMultiStartOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the maximal number of function evaluations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/MultistepIntegrator.html#getMaxGrowth()">getMaxGrowth()</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/MultistepIntegrator.html" title="class in org.apache.commons.math3.ode">MultistepIntegrator</a></dt>
<dd>
<div class="block">Get the maximal growth factor for stepsize control.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/EmbeddedRungeKuttaIntegrator.html#getMaxGrowth()">getMaxGrowth()</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/EmbeddedRungeKuttaIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">EmbeddedRungeKuttaIntegrator</a></dt>
<dd>
<div class="block">Get the maximal growth factor for stepsize control.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Incrementor.html#getMaximalCount()">getMaximalCount()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Incrementor.html" title="class in org.apache.commons.math3.util">Incrementor</a></dt>
<dd>
<div class="block">Gets the upper limit of the counter.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html#getMaximalIterationCount()">getMaximalIterationCount()</a></span> - Method in class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">BaseAbstractUnivariateIntegrator</a></dt>
<dd>
<div class="block">Get the upper limit for the number of iterations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/UnivariateIntegrator.html#getMaximalIterationCount()">getMaximalIterationCount()</a></span> - Method in interface org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/UnivariateIntegrator.html" title="interface in org.apache.commons.math3.analysis.integration">UnivariateIntegrator</a></dt>
<dd>
<div class="block">Get the upper limit for the number of iterations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BracketingNthOrderBrentSolver.html#getMaximalOrder()">getMaximalOrder()</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BracketingNthOrderBrentSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BracketingNthOrderBrentSolver</a></dt>
<dd>
<div class="block">Get the maximal order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/BracketingNthOrderBrentSolverDFP.html#getMaximalOrder()">getMaximalOrder()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/BracketingNthOrderBrentSolverDFP.html" title="class in org.apache.commons.math3.dfp">BracketingNthOrderBrentSolverDFP</a></dt>
<dd>
<div class="block">Get the maximal order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getMaxImpl()">getMaxImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured maximum implementation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#getMaxImpl()">getMaxImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">MultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured maximum implementation</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#getMaxImpl()">getMaxImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured maximum implementation</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html#getMaxImpl()">getMaxImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedMultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured maximum implementation</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#getMaxImpl()">getMaxImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured maximum implementation</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#getMaxIndex()">getMaxIndex()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Get the index of the maximum entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/MaxIter.html#getMaxIter()">getMaxIter()</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/MaxIter.html" title="class in org.apache.commons.math3.optim">MaxIter</a></dt>
<dd>
<div class="block">Gets the maximum number of evaluations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/events/EventState.html#getMaxIterationCount()">getMaxIterationCount()</a></span> - Method in class org.apache.commons.math3.ode.events.<a href="./org/apache/commons/math3/ode/events/EventState.html" title="class in org.apache.commons.math3.ode.events">EventState</a></dt>
<dd>
<div class="block">Get the upper limit in the iteration count for event localization.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/FuzzyKMeansClusterer.html#getMaxIterations()">getMaxIterations()</a></span> - Method in class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/FuzzyKMeansClusterer.html" title="class in org.apache.commons.math3.ml.clustering">FuzzyKMeansClusterer</a></dt>
<dd>
<div class="block">Returns the maximum number of iterations this instance will use.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/KMeansPlusPlusClusterer.html#getMaxIterations()">getMaxIterations()</a></span> - Method in class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/KMeansPlusPlusClusterer.html" title="class in org.apache.commons.math3.ml.clustering">KMeansPlusPlusClusterer</a></dt>
<dd>
<div class="block">Returns the maximum number of iterations this instance will use.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/BaseOptimizer.html#getMaxIterations()">getMaxIterations()</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/BaseOptimizer.html" title="class in org.apache.commons.math3.optim">BaseOptimizer</a></dt>
<dd>
<div class="block">Gets the maximal number of iterations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/AbstractLinearOptimizer.html#getMaxIterations()">getMaxIterations()</a></span> - Method in class org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/AbstractLinearOptimizer.html" title="class in org.apache.commons.math3.optimization.linear">AbstractLinearOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the maximal number of iterations of the algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/LinearOptimizer.html#getMaxIterations()">getMaxIterations()</a></span> - Method in interface org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/LinearOptimizer.html" title="interface in org.apache.commons.math3.optimization.linear">LinearOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the maximal number of iterations of the algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/IterationManager.html#getMaxIterations()">getMaxIterations()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/IterationManager.html" title="class in org.apache.commons.math3.util">IterationManager</a></dt>
<dd>
<div class="block">Returns the maximum number of iterations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html#getMaxStep()">getMaxStep()</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">AdaptiveStepsizeIntegrator</a></dt>
<dd>
<div class="block">Get the maximal step.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#getMaxValue()">getMaxValue()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Get the value of the maximum entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html#getMean()">getMean()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html" title="class in org.apache.commons.math3.distribution">ExponentialDistribution</a></dt>
<dd>
<div class="block">Access the mean.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/NormalDistribution.html#getMean()">getMean()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/NormalDistribution.html" title="class in org.apache.commons.math3.distribution">NormalDistribution</a></dt>
<dd>
<div class="block">Access the mean.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/PoissonDistribution.html#getMean()">getMean()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/PoissonDistribution.html" title="class in org.apache.commons.math3.distribution">PoissonDistribution</a></dt>
<dd>
<div class="block">Get the mean for the distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html#getMean()">getMean()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">AggregateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the <a href="http://www.xycoon.com/arithmetic_mean.htm">
 arithmetic mean </a> of the available values</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getMean()">getMean()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Returns the <a href="http://www.xycoon.com/arithmetic_mean.htm">
 arithmetic mean </a> of the available values</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#getMean()">getMean()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">MultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns an array whose i<sup>th</sup> entry is the mean of the
 i<sup>th</sup> entries of the arrays that have been added using
 <a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#addValue(double[])"><code>MultivariateSummaryStatistics.addValue(double[])</code></a></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StatisticalMultivariateSummary.html#getMean()">getMean()</a></span> - Method in interface org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StatisticalMultivariateSummary.html" title="interface in org.apache.commons.math3.stat.descriptive">StatisticalMultivariateSummary</a></dt>
<dd>
<div class="block">Returns an array whose i<sup>th</sup> entry is the
 mean of the i<sup>th</sup> entries of the arrays
 that correspond to each multivariate sample</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummary.html#getMean()">getMean()</a></span> - Method in interface org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummary.html" title="interface in org.apache.commons.math3.stat.descriptive">StatisticalSummary</a></dt>
<dd>
<div class="block">Returns the <a href="http://www.xycoon.com/arithmetic_mean.htm">
 arithmetic mean </a> of the available values</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummaryValues.html#getMean()">getMean()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummaryValues.html" title="class in org.apache.commons.math3.stat.descriptive">StatisticalSummaryValues</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#getMean()">getMean()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">Returns the mean of the values that have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html#getMean()">getMean()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedMultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns an array whose i<sup>th</sup> entry is the mean of the
 i<sup>th</sup> entries of the arrays that have been added using
 <a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#addValue(double[])"><code>MultivariateSummaryStatistics.addValue(double[])</code></a></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#getMean()">getMean()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the mean of the values that have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getMeanImpl()">getMeanImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured mean implementation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#getMeanImpl()">getMeanImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">MultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured mean implementation</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#getMeanImpl()">getMeanImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured mean implementation</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html#getMeanImpl()">getMeanImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedMultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured mean implementation</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#getMeanImpl()">getMeanImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured mean implementation</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/MultivariateNormalDistribution.html#getMeans()">getMeans()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/MultivariateNormalDistribution.html" title="class in org.apache.commons.math3.distribution">MultivariateNormalDistribution</a></dt>
<dd>
<div class="block">Gets the mean vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/RegressionResults.html#getMeanSquareError()">getMeanSquareError()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/RegressionResults.html" title="class in org.apache.commons.math3.stat.regression">RegressionResults</a></dt>
<dd>
<div class="block">Returns the sum of squared errors divided by the degrees of freedom,
 usually abbreviated MSE.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html#getMeanSquareError()">getMeanSquareError()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html" title="class in org.apache.commons.math3.stat.regression">SimpleRegression</a></dt>
<dd>
<div class="block">Returns the sum of squared errors divided by the degrees of freedom,
 usually abbreviated MSE.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/filter/KalmanFilter.html#getMeasurementDimension()">getMeasurementDimension()</a></span> - Method in class org.apache.commons.math3.filter.<a href="./org/apache/commons/math3/filter/KalmanFilter.html" title="class in org.apache.commons.math3.filter">KalmanFilter</a></dt>
<dd>
<div class="block">Returns the dimension of the measurement vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/filter/DefaultMeasurementModel.html#getMeasurementMatrix()">getMeasurementMatrix()</a></span> - Method in class org.apache.commons.math3.filter.<a href="./org/apache/commons/math3/filter/DefaultMeasurementModel.html" title="class in org.apache.commons.math3.filter">DefaultMeasurementModel</a></dt>
<dd>
<div class="block">Returns the measurement matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/filter/MeasurementModel.html#getMeasurementMatrix()">getMeasurementMatrix()</a></span> - Method in interface org.apache.commons.math3.filter.<a href="./org/apache/commons/math3/filter/MeasurementModel.html" title="interface in org.apache.commons.math3.filter">MeasurementModel</a></dt>
<dd>
<div class="block">Returns the measurement matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/filter/DefaultMeasurementModel.html#getMeasurementNoise()">getMeasurementNoise()</a></span> - Method in class org.apache.commons.math3.filter.<a href="./org/apache/commons/math3/filter/DefaultMeasurementModel.html" title="class in org.apache.commons.math3.filter">DefaultMeasurementModel</a></dt>
<dd>
<div class="block">Returns the measurement noise matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/filter/MeasurementModel.html#getMeasurementNoise()">getMeasurementNoise()</a></span> - Method in interface org.apache.commons.math3.filter.<a href="./org/apache/commons/math3/filter/MeasurementModel.html" title="interface in org.apache.commons.math3.filter">MeasurementModel</a></dt>
<dd>
<div class="block">Returns the measurement noise matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/CauchyDistribution.html#getMedian()">getMedian()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/CauchyDistribution.html" title="class in org.apache.commons.math3.distribution">CauchyDistribution</a></dt>
<dd>
<div class="block">Access the median.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/FuzzyKMeansClusterer.html#getMembershipMatrix()">getMembershipMatrix()</a></span> - Method in class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/FuzzyKMeansClusterer.html" title="class in org.apache.commons.math3.ml.clustering">FuzzyKMeansClusterer</a></dt>
<dd>
<div class="block">Returns the <code>nxk</code> membership matrix, where <code>n</code> is the number
 of data points and <code>k</code> the number of clusters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MathArithmeticException.html#getMessage()">getMessage()</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MathArithmeticException.html" title="class in org.apache.commons.math3.exception">MathArithmeticException</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MathIllegalArgumentException.html#getMessage()">getMessage()</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MathIllegalArgumentException.html" title="class in org.apache.commons.math3.exception">MathIllegalArgumentException</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MathIllegalStateException.html#getMessage()">getMessage()</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MathIllegalStateException.html" title="class in org.apache.commons.math3.exception">MathIllegalStateException</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MathRuntimeException.html#getMessage()">getMessage()</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MathRuntimeException.html" title="class in org.apache.commons.math3.exception">MathRuntimeException</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MathUnsupportedOperationException.html#getMessage()">getMessage()</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MathUnsupportedOperationException.html" title="class in org.apache.commons.math3.exception">MathUnsupportedOperationException</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/util/ExceptionContext.html#getMessage()">getMessage()</a></span> - Method in class org.apache.commons.math3.exception.util.<a href="./org/apache/commons/math3/exception/util/ExceptionContext.html" title="class in org.apache.commons.math3.exception.util">ExceptionContext</a></dt>
<dd>
<div class="block">Gets the default message.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/util/ExceptionContext.html#getMessage(java.util.Locale)">getMessage(Locale)</a></span> - Method in class org.apache.commons.math3.exception.util.<a href="./org/apache/commons/math3/exception/util/ExceptionContext.html" title="class in org.apache.commons.math3.exception.util">ExceptionContext</a></dt>
<dd>
<div class="block">Gets the message in a specified locale.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/util/ExceptionContext.html#getMessage(java.util.Locale, java.lang.String)">getMessage(Locale, String)</a></span> - Method in class org.apache.commons.math3.exception.util.<a href="./org/apache/commons/math3/exception/util/ExceptionContext.html" title="class in org.apache.commons.math3.exception.util">ExceptionContext</a></dt>
<dd>
<div class="block">Gets the message in a specified locale.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/BracketFinder.html#getMid()">getMid()</a></span> - Method in class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/BracketFinder.html" title="class in org.apache.commons.math3.optim.univariate">BracketFinder</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/BracketFinder.html#getMid()">getMid()</a></span> - Method in class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/BracketFinder.html" title="class in org.apache.commons.math3.optimization.univariate">BracketFinder</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Interval.html#getMidPoint()">getMidPoint()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Interval.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Interval</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/geometry/euclidean/oned/Interval.html#getBarycenter()"><code>Interval.getBarycenter()</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html#getMin()">getMin()</a></span> - Method in class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">BaseAbstractUnivariateIntegrator</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html#getMin()">getMin()</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BaseAbstractUnivariateSolver</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/NumberIsTooSmallException.html#getMin()">getMin()</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/NumberIsTooSmallException.html" title="class in org.apache.commons.math3.exception">NumberIsTooSmallException</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/SearchInterval.html#getMin()">getMin()</a></span> - Method in class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/SearchInterval.html" title="class in org.apache.commons.math3.optim.univariate">SearchInterval</a></dt>
<dd>
<div class="block">Gets the lower bound.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/UnivariateOptimizer.html#getMin()">getMin()</a></span> - Method in class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/UnivariateOptimizer.html" title="class in org.apache.commons.math3.optim.univariate">UnivariateOptimizer</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/BaseAbstractUnivariateOptimizer.html#getMin()">getMin()</a></span> - Method in class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/BaseAbstractUnivariateOptimizer.html" title="class in org.apache.commons.math3.optimization.univariate">BaseAbstractUnivariateOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html#getMin()">getMin()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">AggregateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the minimum of the available values</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getMin()">getMin()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Returns the minimum of the available values</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#getMin()">getMin()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">MultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns an array whose i<sup>th</sup> entry is the minimum of the
 i<sup>th</sup> entries of the arrays that have been added using
 <a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#addValue(double[])"><code>MultivariateSummaryStatistics.addValue(double[])</code></a></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StatisticalMultivariateSummary.html#getMin()">getMin()</a></span> - Method in interface org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StatisticalMultivariateSummary.html" title="interface in org.apache.commons.math3.stat.descriptive">StatisticalMultivariateSummary</a></dt>
<dd>
<div class="block">Returns an array whose i<sup>th</sup> entry is the
 minimum of the i<sup>th</sup> entries of the arrays
 that correspond to each multivariate sample</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummary.html#getMin()">getMin()</a></span> - Method in interface org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummary.html" title="interface in org.apache.commons.math3.stat.descriptive">StatisticalSummary</a></dt>
<dd>
<div class="block">Returns the minimum of the available values</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummaryValues.html#getMin()">getMin()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummaryValues.html" title="class in org.apache.commons.math3.stat.descriptive">StatisticalSummaryValues</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#getMin()">getMin()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">Returns the minimum of the values that have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html#getMin()">getMin()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedMultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns an array whose i<sup>th</sup> entry is the minimum of the
 i<sup>th</sup> entries of the arrays that have been added using
 <a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#addValue(double[])"><code>MultivariateSummaryStatistics.addValue(double[])</code></a></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#getMin()">getMin()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the minimum of the values that have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html#getMinimalIterationCount()">getMinimalIterationCount()</a></span> - Method in class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">BaseAbstractUnivariateIntegrator</a></dt>
<dd>
<div class="block">Get the min limit for the number of iterations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/UnivariateIntegrator.html#getMinimalIterationCount()">getMinimalIterationCount()</a></span> - Method in interface org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/UnivariateIntegrator.html" title="interface in org.apache.commons.math3.analysis.integration">UnivariateIntegrator</a></dt>
<dd>
<div class="block">Get the min limit for the number of iterations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getMinImpl()">getMinImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured minimum implementation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#getMinImpl()">getMinImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">MultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured minimum implementation</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#getMinImpl()">getMinImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured minimum implementation</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html#getMinImpl()">getMinImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedMultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured minimum implementation</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#getMinImpl()">getMinImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured minimum implementation</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#getMinIndex()">getMinIndex()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Get the index of the minimum entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/DBSCANClusterer.html#getMinPts()">getMinPts()</a></span> - Method in class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/DBSCANClusterer.html" title="class in org.apache.commons.math3.ml.clustering">DBSCANClusterer</a></dt>
<dd>
<div class="block">Returns the minimum number of points needed for a cluster.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/clustering/DBSCANClusterer.html#getMinPts()">getMinPts()</a></span> - Method in class org.apache.commons.math3.stat.clustering.<a href="./org/apache/commons/math3/stat/clustering/DBSCANClusterer.html" title="class in org.apache.commons.math3.stat.clustering">DBSCANClusterer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Returns the minimum number of points needed for a cluster.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/MultistepIntegrator.html#getMinReduction()">getMinReduction()</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/MultistepIntegrator.html" title="class in org.apache.commons.math3.ode">MultistepIntegrator</a></dt>
<dd>
<div class="block">Get the minimal reduction factor for stepsize control.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/EmbeddedRungeKuttaIntegrator.html#getMinReduction()">getMinReduction()</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/EmbeddedRungeKuttaIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">EmbeddedRungeKuttaIntegrator</a></dt>
<dd>
<div class="block">Get the minimal reduction factor for stepsize control.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html#getMinStep()">getMinStep()</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">AdaptiveStepsizeIntegrator</a></dt>
<dd>
<div class="block">Get the minimal step.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html#getMinus()">getMinus()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html" title="class in org.apache.commons.math3.geometry.partitioning">BSPTree</a></dt>
<dd>
<div class="block">Get the tree on the minus side of the cut hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/SubHyperplane.SplitSubHyperplane.html#getMinus()">getMinus()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/SubHyperplane.SplitSubHyperplane.html" title="class in org.apache.commons.math3.geometry.partitioning">SubHyperplane.SplitSubHyperplane</a></dt>
<dd>
<div class="block">Get the part of the sub-hyperplane on the minus side of the splitting hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/ArcsSet.Split.html#getMinus()">getMinus()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/ArcsSet.Split.html" title="class in org.apache.commons.math3.geometry.spherical.oned">ArcsSet.Split</a></dt>
<dd>
<div class="block">Get the part of the arcs set on the minus side of the splitting arc.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#getMinValue()">getMinValue()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Get the value of the minimum entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/TriangularDistribution.html#getMode()">getMode()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/TriangularDistribution.html" title="class in org.apache.commons.math3.distribution">TriangularDistribution</a></dt>
<dd>
<div class="block">Returns the mode <code>c</code> of this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/ValueServer.html#getMode()">getMode()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/ValueServer.html" title="class in org.apache.commons.math3.random">ValueServer</a></dt>
<dd>
<div class="block">Returns the data generation mode.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#getMode()">getMode()</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Returns the mode value(s) in comparator order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/AbstractCurveFitter.TheoreticalValuesFunction.html#getModelFunction()">getModelFunction()</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/AbstractCurveFitter.TheoreticalValuesFunction.html" title="class in org.apache.commons.math3.fitting">AbstractCurveFitter.TheoreticalValuesFunction</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/ModelFunction.html#getModelFunction()">getModelFunction()</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.vector.<a href="./org/apache/commons/math3/optim/nonlinear/vector/ModelFunction.html" title="class in org.apache.commons.math3.optim.nonlinear.vector">ModelFunction</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Gets the model function to be optimized.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/AbstractCurveFitter.TheoreticalValuesFunction.html#getModelFunctionJacobian()">getModelFunctionJacobian()</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/AbstractCurveFitter.TheoreticalValuesFunction.html" title="class in org.apache.commons.math3.fitting">AbstractCurveFitter.TheoreticalValuesFunction</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/ModelFunctionJacobian.html#getModelFunctionJacobian()">getModelFunctionJacobian()</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.vector.<a href="./org/apache/commons/math3/optim/nonlinear/vector/ModelFunctionJacobian.html" title="class in org.apache.commons.math3.optim.nonlinear.vector">ModelFunctionJacobian</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Gets the Jacobian of the model function to be optimized.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/ValueServer.html#getMu()">getMu()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/ValueServer.html" title="class in org.apache.commons.math3.random">ValueServer</a></dt>
<dd>
<div class="block">Returns the mean used when operating in <a href="./org/apache/commons/math3/random/ValueServer.html#GAUSSIAN_MODE"><code>ValueServer.GAUSSIAN_MODE</code></a>, <a href="./org/apache/commons/math3/random/ValueServer.html#EXPONENTIAL_MODE"><code>ValueServer.EXPONENTIAL_MODE</code></a>
 or <a href="./org/apache/commons/math3/random/ValueServer.html#UNIFORM_MODE"><code>ValueServer.UNIFORM_MODE</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/GeneticAlgorithm.html#getMutationPolicy()">getMutationPolicy()</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/GeneticAlgorithm.html" title="class in org.apache.commons.math3.genetics">GeneticAlgorithm</a></dt>
<dd>
<div class="block">Returns the mutation policy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/GeneticAlgorithm.html#getMutationRate()">getMutationRate()</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/GeneticAlgorithm.html" title="class in org.apache.commons.math3.genetics">GeneticAlgorithm</a></dt>
<dd>
<div class="block">Returns the mutation rate.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialSplineFunction.html#getN()">getN()</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialSplineFunction.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialSplineFunction</a></dt>
<dd>
<div class="block">Get the number of spline segments.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/Covariance.html#getN()">getN()</a></span> - Method in class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/Covariance.html" title="class in org.apache.commons.math3.stat.correlation">Covariance</a></dt>
<dd>
<div class="block">Returns the number of observations (length of covariate vectors)</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/StorelessCovariance.html#getN()">getN()</a></span> - Method in class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/StorelessCovariance.html" title="class in org.apache.commons.math3.stat.correlation">StorelessCovariance</a></dt>
<dd>
<div class="block">This <a href="./org/apache/commons/math3/stat/correlation/Covariance.html" title="class in org.apache.commons.math3.stat.correlation"><code>Covariance</code></a> method is not supported by a <a href="./org/apache/commons/math3/stat/correlation/StorelessCovariance.html" title="class in org.apache.commons.math3.stat.correlation"><code>StorelessCovariance</code></a>,
 since the number of bivariate observations does not have to be the same for different
 pairs of covariates - i.e., N as defined in <a href="./org/apache/commons/math3/stat/correlation/Covariance.html#getN()"><code>Covariance.getN()</code></a> is undefined.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html#getN()">getN()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">AggregateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the number of available values</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getN()">getN()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Returns the number of available values</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/GeometricMean.html#getN()">getN()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/GeometricMean.html" title="class in org.apache.commons.math3.stat.descriptive.moment">GeometricMean</a></dt>
<dd>
<div class="block">Returns the number of values that have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Kurtosis.html#getN()">getN()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Kurtosis.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Kurtosis</a></dt>
<dd>
<div class="block">Returns the number of values that have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Mean.html#getN()">getN()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Mean.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Mean</a></dt>
<dd>
<div class="block">Returns the number of values that have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Skewness.html#getN()">getN()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Skewness.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Skewness</a></dt>
<dd>
<div class="block">Returns the number of values that have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html#getN()">getN()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html" title="class in org.apache.commons.math3.stat.descriptive.moment">StandardDeviation</a></dt>
<dd>
<div class="block">Returns the number of values that have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html#getN()">getN()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Variance</a></dt>
<dd>
<div class="block">Returns the number of values that have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/VectorialCovariance.html#getN()">getN()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/VectorialCovariance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">VectorialCovariance</a></dt>
<dd>
<div class="block">Get the number of vectors in the sample.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/VectorialMean.html#getN()">getN()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/VectorialMean.html" title="class in org.apache.commons.math3.stat.descriptive.moment">VectorialMean</a></dt>
<dd>
<div class="block">Get the number of vectors in the sample.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#getN()">getN()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">MultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the number of available values</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/rank/Max.html#getN()">getN()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.rank.<a href="./org/apache/commons/math3/stat/descriptive/rank/Max.html" title="class in org.apache.commons.math3.stat.descriptive.rank">Max</a></dt>
<dd>
<div class="block">Returns the number of values that have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/rank/Min.html#getN()">getN()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.rank.<a href="./org/apache/commons/math3/stat/descriptive/rank/Min.html" title="class in org.apache.commons.math3.stat.descriptive.rank">Min</a></dt>
<dd>
<div class="block">Returns the number of values that have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StatisticalMultivariateSummary.html#getN()">getN()</a></span> - Method in interface org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StatisticalMultivariateSummary.html" title="interface in org.apache.commons.math3.stat.descriptive">StatisticalMultivariateSummary</a></dt>
<dd>
<div class="block">Returns the number of available values</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummary.html#getN()">getN()</a></span> - Method in interface org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummary.html" title="interface in org.apache.commons.math3.stat.descriptive">StatisticalSummary</a></dt>
<dd>
<div class="block">Returns the number of available values</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummaryValues.html#getN()">getN()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummaryValues.html" title="class in org.apache.commons.math3.stat.descriptive">StatisticalSummaryValues</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StorelessUnivariateStatistic.html#getN()">getN()</a></span> - Method in interface org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StorelessUnivariateStatistic.html" title="interface in org.apache.commons.math3.stat.descriptive">StorelessUnivariateStatistic</a></dt>
<dd>
<div class="block">Returns the number of values that have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/Product.html#getN()">getN()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/Product.html" title="class in org.apache.commons.math3.stat.descriptive.summary">Product</a></dt>
<dd>
<div class="block">Returns the number of values that have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/Sum.html#getN()">getN()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/Sum.html" title="class in org.apache.commons.math3.stat.descriptive.summary">Sum</a></dt>
<dd>
<div class="block">Returns the number of values that have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfLogs.html#getN()">getN()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfLogs.html" title="class in org.apache.commons.math3.stat.descriptive.summary">SumOfLogs</a></dt>
<dd>
<div class="block">Returns the number of values that have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfSquares.html#getN()">getN()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfSquares.html" title="class in org.apache.commons.math3.stat.descriptive.summary">SumOfSquares</a></dt>
<dd>
<div class="block">Returns the number of values that have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#getN()">getN()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">Returns the number of available values</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html#getN()">getN()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedDescriptiveStatistics</a></dt>
<dd>
<div class="block">Returns the number of available values</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html#getN()">getN()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedMultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the number of available values</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#getN()">getN()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the number of available values</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/MillerUpdatingRegression.html#getN()">getN()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/MillerUpdatingRegression.html" title="class in org.apache.commons.math3.stat.regression">MillerUpdatingRegression</a></dt>
<dd>
<div class="block">Gets the number of observations added to the regression model.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/RegressionResults.html#getN()">getN()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/RegressionResults.html" title="class in org.apache.commons.math3.stat.regression">RegressionResults</a></dt>
<dd>
<div class="block">Returns the number of observations added to the regression model.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html#getN()">getN()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html" title="class in org.apache.commons.math3.stat.regression">SimpleRegression</a></dt>
<dd>
<div class="block">Returns the number of observations that have been added to the model.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/UpdatingMultipleLinearRegression.html#getN()">getN()</a></span> - Method in interface org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/UpdatingMultipleLinearRegression.html" title="interface in org.apache.commons.math3.stat.regression">UpdatingMultipleLinearRegression</a></dt>
<dd>
<div class="block">Returns the number of observations added to the regression model.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Combinations.html#getN()">getN()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Combinations.html" title="class in org.apache.commons.math3.util">Combinations</a></dt>
<dd>
<div class="block">Gets the size of the set from which combinations are drawn.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractIntegrator.html#getName()">getName()</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractIntegrator.html" title="class in org.apache.commons.math3.ode">AbstractIntegrator</a></dt>
<dd>
<div class="block">Get the name of the method.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ODEIntegrator.html#getName()">getName()</a></span> - Method in interface org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ODEIntegrator.html" title="interface in org.apache.commons.math3.ode">ODEIntegrator</a></dt>
<dd>
<div class="block">Get the name of the method.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/UnknownParameterException.html#getName()">getName()</a></span> - Method in exception org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/UnknownParameterException.html" title="class in org.apache.commons.math3.ode">UnknownParameterException</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/ranking/NaturalRanking.html#getNanStrategy()">getNanStrategy()</a></span> - Method in class org.apache.commons.math3.stat.ranking.<a href="./org/apache/commons/math3/stat/ranking/NaturalRanking.html" title="class in org.apache.commons.math3.stat.ranking">NaturalRanking</a></dt>
<dd>
<div class="block">Return the NaNStrategy</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/FiniteDifferencesDifferentiator.html#getNbPoints()">getNbPoints()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/FiniteDifferencesDifferentiator.html" title="class in org.apache.commons.math3.analysis.differentiation">FiniteDifferencesDifferentiator</a></dt>
<dd>
<div class="block">Get the number of points to use.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/Network.html#getNeighbours(java.lang.Iterable)">getNeighbours(Iterable&lt;Neuron&gt;)</a></span> - Method in class org.apache.commons.math3.ml.neuralnet.<a href="./org/apache/commons/math3/ml/neuralnet/Network.html" title="class in org.apache.commons.math3.ml.neuralnet">Network</a></dt>
<dd>
<div class="block">Retrieves the neurons in the neighbourhood of any neuron in the
 <code>neurons</code> list.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/Network.html#getNeighbours(java.lang.Iterable, java.lang.Iterable)">getNeighbours(Iterable&lt;Neuron&gt;, Iterable&lt;Neuron&gt;)</a></span> - Method in class org.apache.commons.math3.ml.neuralnet.<a href="./org/apache/commons/math3/ml/neuralnet/Network.html" title="class in org.apache.commons.math3.ml.neuralnet">Network</a></dt>
<dd>
<div class="block">Retrieves the neurons in the neighbourhood of any neuron in the
 <code>neurons</code> list.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/Network.html#getNeighbours(org.apache.commons.math3.ml.neuralnet.Neuron)">getNeighbours(Neuron)</a></span> - Method in class org.apache.commons.math3.ml.neuralnet.<a href="./org/apache/commons/math3/ml/neuralnet/Network.html" title="class in org.apache.commons.math3.ml.neuralnet">Network</a></dt>
<dd>
<div class="block">Retrieves the neighbours of the given neuron.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/Network.html#getNeighbours(org.apache.commons.math3.ml.neuralnet.Neuron, java.lang.Iterable)">getNeighbours(Neuron, Iterable&lt;Neuron&gt;)</a></span> - Method in class org.apache.commons.math3.ml.neuralnet.<a href="./org/apache/commons/math3/ml/neuralnet/Network.html" title="class in org.apache.commons.math3.ml.neuralnet">Network</a></dt>
<dd>
<div class="block">Retrieves the neighbours of the given neuron.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/oned/NeuronString.html#getNetwork()">getNetwork()</a></span> - Method in class org.apache.commons.math3.ml.neuralnet.oned.<a href="./org/apache/commons/math3/ml/neuralnet/oned/NeuronString.html" title="class in org.apache.commons.math3.ml.neuralnet.oned">NeuronString</a></dt>
<dd>
<div class="block">Retrieves the underlying network.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/twod/NeuronSquareMesh2D.html#getNetwork()">getNetwork()</a></span> - Method in class org.apache.commons.math3.ml.neuralnet.twod.<a href="./org/apache/commons/math3/ml/neuralnet/twod/NeuronSquareMesh2D.html" title="class in org.apache.commons.math3.ml.neuralnet.twod">NeuronSquareMesh2D</a></dt>
<dd>
<div class="block">Retrieves the underlying network.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/Network.html#getNeuron(long)">getNeuron(long)</a></span> - Method in class org.apache.commons.math3.ml.neuralnet.<a href="./org/apache/commons/math3/ml/neuralnet/Network.html" title="class in org.apache.commons.math3.ml.neuralnet">Network</a></dt>
<dd>
<div class="block">Retrieves the neuron with the given (unique) <code>id</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/twod/NeuronSquareMesh2D.html#getNeuron(int, int)">getNeuron(int, int)</a></span> - Method in class org.apache.commons.math3.ml.neuralnet.twod.<a href="./org/apache/commons/math3/ml/neuralnet/twod/NeuronSquareMesh2D.html" title="class in org.apache.commons.math3.ml.neuralnet.twod">NeuronSquareMesh2D</a></dt>
<dd>
<div class="block">Retrieves the neuron at location <code>(i, j)</code> in the map.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/Network.html#getNeurons(java.util.Comparator)">getNeurons(Comparator&lt;Neuron&gt;)</a></span> - Method in class org.apache.commons.math3.ml.neuralnet.<a href="./org/apache/commons/math3/ml/neuralnet/Network.html" title="class in org.apache.commons.math3.ml.neuralnet">Network</a></dt>
<dd>
<div class="block">Creates a list of the neurons, sorted in a custom order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionNewtonForm.html#getNewtonCoefficients()">getNewtonCoefficients()</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionNewtonForm.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunctionNewtonForm</a></dt>
<dd>
<div class="block">Returns a copy of coefficients in Newton form formula.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/utilities/AVLTree.Node.html#getNext()">getNext()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.utilities.<a href="./org/apache/commons/math3/geometry/partitioning/utilities/AVLTree.Node.html" title="class in org.apache.commons.math3.geometry.partitioning.utilities">AVLTree.Node</a></dt>
<dd>
<div class="block">Get the node containing the next larger or equal element.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/ValueServer.html#getNext()">getNext()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/ValueServer.html" title="class in org.apache.commons.math3.random">ValueServer</a></dt>
<dd>
<div class="block">Returns the next generated value, generated according
 to the mode value (see MODE constants).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/HaltonSequenceGenerator.html#getNextIndex()">getNextIndex()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/HaltonSequenceGenerator.html" title="class in org.apache.commons.math3.random">HaltonSequenceGenerator</a></dt>
<dd>
<div class="block">Returns the index i of the next point in the Halton sequence that will be returned
 by calling <a href="./org/apache/commons/math3/random/HaltonSequenceGenerator.html#nextVector()"><code>HaltonSequenceGenerator.nextVector()</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/SobolSequenceGenerator.html#getNextIndex()">getNextIndex()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/SobolSequenceGenerator.html" title="class in org.apache.commons.math3.random">SobolSequenceGenerator</a></dt>
<dd>
<div class="block">Returns the index i of the next point in the Sobol sequence that will be returned
 by calling <a href="./org/apache/commons/math3/random/SobolSequenceGenerator.html#nextVector()"><code>SobolSequenceGenerator.nextVector()</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#getNextValue()">getNextValue()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random">EmpiricalDistribution</a></dt>
<dd>
<div class="block">Generates a random value from this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Quaternion.html#getNorm()">getNorm()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex">Quaternion</a></dt>
<dd>
<div class="block">Computes the norm of the quaternion.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#getNorm()">getNorm()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Get the L<sub>2</sub> norm for the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#getNorm()">getNorm()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Get the L<sub>2</sub> norm for the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#getNorm()">getNorm()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Get the L<sub>2</sub> norm for the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#getNorm()">getNorm()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Get the L<sub>2</sub> norm for the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/Vector.html#getNorm()">getNorm()</a></span> - Method in interface org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/Vector.html" title="interface in org.apache.commons.math3.geometry">Vector</a></dt>
<dd>
<div class="block">Get the L<sub>2</sub> norm for the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#getNorm()">getNorm()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Returns the <a href="http://mathworld.wolfram.com/MaximumAbsoluteRowSumNorm.html">
 maximum absolute row sum norm</a> of the matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#getNorm()">getNorm()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Returns the L<sub>2</sub> norm of the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#getNorm()">getNorm()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Returns the <a href="http://mathworld.wolfram.com/MaximumAbsoluteRowSumNorm.html">
 maximum absolute row sum norm</a> of the matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#getNorm()">getNorm()</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Returns the <a href="http://mathworld.wolfram.com/MaximumAbsoluteRowSumNorm.html">
 maximum absolute row sum norm</a> of the matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#getNorm()">getNorm()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Returns the L<sub>2</sub> norm of the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SingularValueDecomposition.html#getNorm()">getNorm()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SingularValueDecomposition.html" title="class in org.apache.commons.math3.linear">SingularValueDecomposition</a></dt>
<dd>
<div class="block">Returns the L<sub>2</sub> norm of the matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#getNorm1()">getNorm1()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Get the L<sub>1</sub> norm for the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#getNorm1()">getNorm1()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Get the L<sub>1</sub> norm for the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#getNorm1()">getNorm1()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Get the L<sub>1</sub> norm for the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#getNorm1()">getNorm1()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Get the L<sub>1</sub> norm for the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/Vector.html#getNorm1()">getNorm1()</a></span> - Method in interface org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/Vector.html" title="interface in org.apache.commons.math3.geometry">Vector</a></dt>
<dd>
<div class="block">Get the L<sub>1</sub> norm for the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#getNormal()">getNormal()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block">Get the normalized normal vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/interval/IntervalUtils.html#getNormalApproximationInterval(int, int, double)">getNormalApproximationInterval(int, int, double)</a></span> - Static method in class org.apache.commons.math3.stat.interval.<a href="./org/apache/commons/math3/stat/interval/IntervalUtils.html" title="class in org.apache.commons.math3.stat.interval">IntervalUtils</a></dt>
<dd>
<div class="block">Create a binomial confidence interval for the true probability of success
 of an unknown binomial distribution with the given observed number of
 trials, successes and confidence level using the Normal approximation to
 the binomial distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#getNormInf()">getNormInf()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Get the L<sub>&infin;</sub> norm for the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#getNormInf()">getNormInf()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Get the L<sub>&infin;</sub> norm for the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#getNormInf()">getNormInf()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Get the L<sub>&infin;</sub> norm for the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#getNormInf()">getNormInf()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Get the L<sub>&infin;</sub> norm for the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/Vector.html#getNormInf()">getNormInf()</a></span> - Method in interface org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/Vector.html" title="interface in org.apache.commons.math3.geometry">Vector</a></dt>
<dd>
<div class="block">Get the L<sub>&infin;</sub> norm for the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DefaultIterativeLinearSolverEvent.html#getNormOfResidual()">getNormOfResidual()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DefaultIterativeLinearSolverEvent.html" title="class in org.apache.commons.math3.linear">DefaultIterativeLinearSolverEvent</a></dt>
<dd>
<div class="block">Returns the norm of the residual.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/IterativeLinearSolverEvent.html#getNormOfResidual()">getNormOfResidual()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/IterativeLinearSolverEvent.html" title="class in org.apache.commons.math3.linear">IterativeLinearSolverEvent</a></dt>
<dd>
<div class="block">Returns the norm of the residual.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#getNormSq()">getNormSq()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Get the square of the norm for the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#getNormSq()">getNormSq()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Get the square of the norm for the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#getNormSq()">getNormSq()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Get the square of the norm for the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#getNormSq()">getNormSq()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Get the square of the norm for the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/Vector.html#getNormSq()">getNormSq()</a></span> - Method in interface org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/Vector.html" title="interface in org.apache.commons.math3.geometry">Vector</a></dt>
<dd>
<div class="block">Get the square of the norm for the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/utilities/AVLTree.html#getNotLarger(T)">getNotLarger(T)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.utilities.<a href="./org/apache/commons/math3/geometry/partitioning/utilities/AVLTree.html" title="class in org.apache.commons.math3.geometry.partitioning.utilities">AVLTree</a></dt>
<dd>
<div class="block">Get the node whose element is not larger than the reference object.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/utilities/AVLTree.html#getNotSmaller(T)">getNotSmaller(T)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.utilities.<a href="./org/apache/commons/math3/geometry/partitioning/utilities/AVLTree.html" title="class in org.apache.commons.math3.geometry.partitioning.utilities">AVLTree</a></dt>
<dd>
<div class="block">Get the node whose element is not smaller than the reference object.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdamsNordsieckTransformer.html#getNSteps()">getNSteps()</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdamsNordsieckTransformer.html" title="class in org.apache.commons.math3.ode.nonstiff">AdamsNordsieckTransformer</a></dt>
<dd>
<div class="block">Get the number of steps of the method
 (excluding the one being computed).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/sofm/KohonenUpdateAction.html#getNumberOfCalls()">getNumberOfCalls()</a></span> - Method in class org.apache.commons.math3.ml.neuralnet.sofm.<a href="./org/apache/commons/math3/ml/neuralnet/sofm/KohonenUpdateAction.html" title="class in org.apache.commons.math3.ml.neuralnet.sofm">KohonenUpdateAction</a></dt>
<dd>
<div class="block">Retrieves the number of calls to the <a href="./org/apache/commons/math3/ml/neuralnet/sofm/KohonenUpdateAction.html#update(org.apache.commons.math3.ml.neuralnet.Network, double[])"><code>update</code></a>
 method.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/twod/NeuronSquareMesh2D.html#getNumberOfColumns()">getNumberOfColumns()</a></span> - Method in class org.apache.commons.math3.ml.neuralnet.twod.<a href="./org/apache/commons/math3/ml/neuralnet/twod/NeuronSquareMesh2D.html" title="class in org.apache.commons.math3.ml.neuralnet.twod">NeuronSquareMesh2D</a></dt>
<dd>
<div class="block">Gets the number of neurons in each column of this map.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ZipfDistribution.html#getNumberOfElements()">getNumberOfElements()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ZipfDistribution.html" title="class in org.apache.commons.math3.distribution">ZipfDistribution</a></dt>
<dd>
<div class="block">Get the number of elements (e.g.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/RegressionResults.html#getNumberOfParameters()">getNumberOfParameters()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/RegressionResults.html" title="class in org.apache.commons.math3.stat.regression">RegressionResults</a></dt>
<dd>
<div class="block">Returns the number of parameters estimated in the model.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/gauss/GaussIntegrator.html#getNumberOfPoints()">getNumberOfPoints()</a></span> - Method in class org.apache.commons.math3.analysis.integration.gauss.<a href="./org/apache/commons/math3/analysis/integration/gauss/GaussIntegrator.html" title="class in org.apache.commons.math3.analysis.integration.gauss">GaussIntegrator</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/RootsOfUnity.html#getNumberOfRoots()">getNumberOfRoots()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/RootsOfUnity.html" title="class in org.apache.commons.math3.complex">RootsOfUnity</a></dt>
<dd>
<div class="block">Returns the number of roots of unity currently stored.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/twod/NeuronSquareMesh2D.html#getNumberOfRows()">getNumberOfRows()</a></span> - Method in class org.apache.commons.math3.ml.neuralnet.twod.<a href="./org/apache/commons/math3/ml/neuralnet/twod/NeuronSquareMesh2D.html" title="class in org.apache.commons.math3.ml.neuralnet.twod">NeuronSquareMesh2D</a></dt>
<dd>
<div class="block">Gets the number of neurons in each row of this map.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/HypergeometricDistribution.html#getNumberOfSuccesses()">getNumberOfSuccesses()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/HypergeometricDistribution.html" title="class in org.apache.commons.math3.distribution">HypergeometricDistribution</a></dt>
<dd>
<div class="block">Access the number of successes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/PascalDistribution.html#getNumberOfSuccesses()">getNumberOfSuccesses()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/PascalDistribution.html" title="class in org.apache.commons.math3.distribution">PascalDistribution</a></dt>
<dd>
<div class="block">Access the number of successes for this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/BinomialDistribution.html#getNumberOfTrials()">getNumberOfTrials()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/BinomialDistribution.html" title="class in org.apache.commons.math3.distribution">BinomialDistribution</a></dt>
<dd>
<div class="block">Access the number of trials for this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/DoubleArray.html#getNumElements()">getNumElements()</a></span> - Method in interface org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/DoubleArray.html" title="interface in org.apache.commons.math3.util">DoubleArray</a></dt>
<dd>
<div class="block">Returns the number of elements currently in the array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#getNumElements()">getNumElements()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block">Returns the number of elements currently in the array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#getNumerator()">getNumerator()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Access the numerator as a <code>BigInteger</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#getNumerator()">getNumerator()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">Access the numerator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#getNumeratorAsInt()">getNumeratorAsInt()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Access the numerator as a <tt>int</tt>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#getNumeratorAsLong()">getNumeratorAsLong()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Access the numerator as a <tt>long</tt>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/FDistribution.html#getNumeratorDegreesOfFreedom()">getNumeratorDegreesOfFreedom()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/FDistribution.html" title="class in org.apache.commons.math3.distribution">FDistribution</a></dt>
<dd>
<div class="block">Access the numerator degrees of freedom.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/AbstractFormat.html#getNumeratorFormat()">getNumeratorFormat()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/AbstractFormat.html" title="class in org.apache.commons.math3.fraction">AbstractFormat</a></dt>
<dd>
<div class="block">Access the numerator format.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/BetaDistribution.html#getNumericalMean()">getNumericalMean()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/BetaDistribution.html" title="class in org.apache.commons.math3.distribution">BetaDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the mean of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/BinomialDistribution.html#getNumericalMean()">getNumericalMean()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/BinomialDistribution.html" title="class in org.apache.commons.math3.distribution">BinomialDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the mean of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/CauchyDistribution.html#getNumericalMean()">getNumericalMean()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/CauchyDistribution.html" title="class in org.apache.commons.math3.distribution">CauchyDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the mean of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html#getNumericalMean()">getNumericalMean()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html" title="class in org.apache.commons.math3.distribution">ChiSquaredDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the mean of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html#getNumericalMean()">getNumericalMean()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedIntegerDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the mean of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/EnumeratedRealDistribution.html#getNumericalMean()">getNumericalMean()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/EnumeratedRealDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedRealDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the mean of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html#getNumericalMean()">getNumericalMean()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html" title="class in org.apache.commons.math3.distribution">ExponentialDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the mean of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/FDistribution.html#getNumericalMean()">getNumericalMean()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/FDistribution.html" title="class in org.apache.commons.math3.distribution">FDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the mean of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/GammaDistribution.html#getNumericalMean()">getNumericalMean()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/GammaDistribution.html" title="class in org.apache.commons.math3.distribution">GammaDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the mean of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/GeometricDistribution.html#getNumericalMean()">getNumericalMean()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/GeometricDistribution.html" title="class in org.apache.commons.math3.distribution">GeometricDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the mean of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/HypergeometricDistribution.html#getNumericalMean()">getNumericalMean()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/HypergeometricDistribution.html" title="class in org.apache.commons.math3.distribution">HypergeometricDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the mean of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/IntegerDistribution.html#getNumericalMean()">getNumericalMean()</a></span> - Method in interface org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/IntegerDistribution.html" title="interface in org.apache.commons.math3.distribution">IntegerDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the mean of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LevyDistribution.html#getNumericalMean()">getNumericalMean()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LevyDistribution.html" title="class in org.apache.commons.math3.distribution">LevyDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the mean of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html#getNumericalMean()">getNumericalMean()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html" title="class in org.apache.commons.math3.distribution">LogNormalDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the mean of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/NormalDistribution.html#getNumericalMean()">getNumericalMean()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/NormalDistribution.html" title="class in org.apache.commons.math3.distribution">NormalDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the mean of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ParetoDistribution.html#getNumericalMean()">getNumericalMean()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ParetoDistribution.html" title="class in org.apache.commons.math3.distribution">ParetoDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the mean of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/PascalDistribution.html#getNumericalMean()">getNumericalMean()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/PascalDistribution.html" title="class in org.apache.commons.math3.distribution">PascalDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the mean of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/PoissonDistribution.html#getNumericalMean()">getNumericalMean()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/PoissonDistribution.html" title="class in org.apache.commons.math3.distribution">PoissonDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the mean of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/RealDistribution.html#getNumericalMean()">getNumericalMean()</a></span> - Method in interface org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/RealDistribution.html" title="interface in org.apache.commons.math3.distribution">RealDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the mean of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/TDistribution.html#getNumericalMean()">getNumericalMean()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/TDistribution.html" title="class in org.apache.commons.math3.distribution">TDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the mean of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/TriangularDistribution.html#getNumericalMean()">getNumericalMean()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/TriangularDistribution.html" title="class in org.apache.commons.math3.distribution">TriangularDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the mean of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/UniformIntegerDistribution.html#getNumericalMean()">getNumericalMean()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/UniformIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">UniformIntegerDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the mean of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html#getNumericalMean()">getNumericalMean()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html" title="class in org.apache.commons.math3.distribution">UniformRealDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the mean of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/WeibullDistribution.html#getNumericalMean()">getNumericalMean()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/WeibullDistribution.html" title="class in org.apache.commons.math3.distribution">WeibullDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the mean of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ZipfDistribution.html#getNumericalMean()">getNumericalMean()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ZipfDistribution.html" title="class in org.apache.commons.math3.distribution">ZipfDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the mean of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#getNumericalMean()">getNumericalMean()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random">EmpiricalDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the mean of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/BetaDistribution.html#getNumericalVariance()">getNumericalVariance()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/BetaDistribution.html" title="class in org.apache.commons.math3.distribution">BetaDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the variance of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/BinomialDistribution.html#getNumericalVariance()">getNumericalVariance()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/BinomialDistribution.html" title="class in org.apache.commons.math3.distribution">BinomialDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the variance of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/CauchyDistribution.html#getNumericalVariance()">getNumericalVariance()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/CauchyDistribution.html" title="class in org.apache.commons.math3.distribution">CauchyDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the variance of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html#getNumericalVariance()">getNumericalVariance()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html" title="class in org.apache.commons.math3.distribution">ChiSquaredDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the variance of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html#getNumericalVariance()">getNumericalVariance()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedIntegerDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the variance of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/EnumeratedRealDistribution.html#getNumericalVariance()">getNumericalVariance()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/EnumeratedRealDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedRealDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the variance of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html#getNumericalVariance()">getNumericalVariance()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html" title="class in org.apache.commons.math3.distribution">ExponentialDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the variance of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/FDistribution.html#getNumericalVariance()">getNumericalVariance()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/FDistribution.html" title="class in org.apache.commons.math3.distribution">FDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the variance of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/GammaDistribution.html#getNumericalVariance()">getNumericalVariance()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/GammaDistribution.html" title="class in org.apache.commons.math3.distribution">GammaDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the variance of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/GeometricDistribution.html#getNumericalVariance()">getNumericalVariance()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/GeometricDistribution.html" title="class in org.apache.commons.math3.distribution">GeometricDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the variance of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/HypergeometricDistribution.html#getNumericalVariance()">getNumericalVariance()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/HypergeometricDistribution.html" title="class in org.apache.commons.math3.distribution">HypergeometricDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the variance of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/IntegerDistribution.html#getNumericalVariance()">getNumericalVariance()</a></span> - Method in interface org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/IntegerDistribution.html" title="interface in org.apache.commons.math3.distribution">IntegerDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the variance of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LevyDistribution.html#getNumericalVariance()">getNumericalVariance()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LevyDistribution.html" title="class in org.apache.commons.math3.distribution">LevyDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the variance of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html#getNumericalVariance()">getNumericalVariance()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html" title="class in org.apache.commons.math3.distribution">LogNormalDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the variance of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/NormalDistribution.html#getNumericalVariance()">getNumericalVariance()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/NormalDistribution.html" title="class in org.apache.commons.math3.distribution">NormalDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the variance of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ParetoDistribution.html#getNumericalVariance()">getNumericalVariance()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ParetoDistribution.html" title="class in org.apache.commons.math3.distribution">ParetoDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the variance of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/PascalDistribution.html#getNumericalVariance()">getNumericalVariance()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/PascalDistribution.html" title="class in org.apache.commons.math3.distribution">PascalDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the variance of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/PoissonDistribution.html#getNumericalVariance()">getNumericalVariance()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/PoissonDistribution.html" title="class in org.apache.commons.math3.distribution">PoissonDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the variance of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/RealDistribution.html#getNumericalVariance()">getNumericalVariance()</a></span> - Method in interface org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/RealDistribution.html" title="interface in org.apache.commons.math3.distribution">RealDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the variance of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/TDistribution.html#getNumericalVariance()">getNumericalVariance()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/TDistribution.html" title="class in org.apache.commons.math3.distribution">TDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the variance of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/TriangularDistribution.html#getNumericalVariance()">getNumericalVariance()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/TriangularDistribution.html" title="class in org.apache.commons.math3.distribution">TriangularDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the variance of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/UniformIntegerDistribution.html#getNumericalVariance()">getNumericalVariance()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/UniformIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">UniformIntegerDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the variance of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html#getNumericalVariance()">getNumericalVariance()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html" title="class in org.apache.commons.math3.distribution">UniformRealDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the variance of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/WeibullDistribution.html#getNumericalVariance()">getNumericalVariance()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/WeibullDistribution.html" title="class in org.apache.commons.math3.distribution">WeibullDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the variance of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ZipfDistribution.html#getNumericalVariance()">getNumericalVariance()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ZipfDistribution.html" title="class in org.apache.commons.math3.distribution">ZipfDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the variance of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#getNumericalVariance()">getNumericalVariance()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random">EmpiricalDistribution</a></dt>
<dd>
<div class="block">Use this method to get the numerical value of the variance of this
 distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/FixedGenerationCount.html#getNumGenerations()">getNumGenerations()</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/FixedGenerationCount.html" title="class in org.apache.commons.math3.genetics">FixedGenerationCount</a></dt>
<dd>
<div class="block">Returns the number of generations that have already passed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/MultiKMeansPlusPlusClusterer.html#getNumTrials()">getNumTrials()</a></span> - Method in class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/MultiKMeansPlusPlusClusterer.html" title="class in org.apache.commons.math3.ml.clustering">MultiKMeansPlusPlusClusterer</a></dt>
<dd>
<div class="block">Returns the number of trials this instance will do.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/ObjectiveFunction.html#getObjectiveFunction()">getObjectiveFunction()</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/ObjectiveFunction.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar">ObjectiveFunction</a></dt>
<dd>
<div class="block">Gets the function to be optimized.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/UnivariateObjectiveFunction.html#getObjectiveFunction()">getObjectiveFunction()</a></span> - Method in class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/UnivariateObjectiveFunction.html" title="class in org.apache.commons.math3.optim.univariate">UnivariateObjectiveFunction</a></dt>
<dd>
<div class="block">Gets the function to be optimized.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html#getObjectiveFunction()">getObjectiveFunction()</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateVectorOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Gets the objective vector function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/ObjectiveFunctionGradient.html#getObjectiveFunctionGradient()">getObjectiveFunctionGradient()</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/ObjectiveFunctionGradient.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar">ObjectiveFunctionGradient</a></dt>
<dd>
<div class="block">Gets the gradient of the function to be optimized.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/FuzzyKMeansClusterer.html#getObjectiveFunctionValue()">getObjectiveFunctionValue()</a></span> - Method in class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/FuzzyKMeansClusterer.html" title="class in org.apache.commons.math3.ml.clustering">FuzzyKMeansClusterer</a></dt>
<dd>
<div class="block">Get the value of the objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/CurveFitter.html#getObservations()">getObservations()</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/CurveFitter.html" title="class in org.apache.commons.math3.fitting">CurveFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the observed points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/fitting/CurveFitter.html#getObservations()">getObservations()</a></span> - Method in class org.apache.commons.math3.optimization.fitting.<a href="./org/apache/commons/math3/optimization/fitting/CurveFitter.html" title="class in org.apache.commons.math3.optimization.fitting">CurveFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the observed points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresAdapter.html#getObservationSize()">getObservationSize()</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresAdapter.html" title="class in org.apache.commons.math3.fitting.leastsquares">LeastSquaresAdapter</a></dt>
<dd>
<div class="block">Get the number of observations (rows in the Jacobian) in this problem.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.html#getObservationSize()">getObservationSize()</a></span> - Method in interface org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.html" title="interface in org.apache.commons.math3.fitting.leastsquares">LeastSquaresProblem</a></dt>
<dd>
<div class="block">Get the number of observations (rows in the Jacobian) in this problem.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/OrientedPoint.html#getOffset(org.apache.commons.math3.geometry.Vector)">getOffset(Vector&lt;Euclidean1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/OrientedPoint.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">OrientedPoint</a></dt>
<dd>
<div class="block">Get the offset (oriented distance) of a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/OrientedPoint.html#getOffset(org.apache.commons.math3.geometry.Point)">getOffset(Point&lt;Euclidean1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/OrientedPoint.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">OrientedPoint</a></dt>
<dd>
<div class="block">Get the offset (oriented distance) of a point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#getOffset(org.apache.commons.math3.geometry.euclidean.threed.Plane)">getOffset(Plane)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block">Get the offset (oriented distance) of a parallel plane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#getOffset(org.apache.commons.math3.geometry.Vector)">getOffset(Vector&lt;Euclidean3D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block">Get the offset (oriented distance) of a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#getOffset(org.apache.commons.math3.geometry.Point)">getOffset(Point&lt;Euclidean3D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block">Get the offset (oriented distance) of a point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#getOffset(org.apache.commons.math3.geometry.euclidean.twod.Line)">getOffset(Line)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Line</a></dt>
<dd>
<div class="block">Get the offset (oriented distance) of a parallel line.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#getOffset(org.apache.commons.math3.geometry.Vector)">getOffset(Vector&lt;Euclidean2D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Line</a></dt>
<dd>
<div class="block">Get the offset (oriented distance) of a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#getOffset(org.apache.commons.math3.geometry.Point)">getOffset(Point&lt;Euclidean2D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Line</a></dt>
<dd>
<div class="block">Get the offset (oriented distance) of a point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/BoundaryProjection.html#getOffset()">getOffset()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/BoundaryProjection.html" title="class in org.apache.commons.math3.geometry.partitioning">BoundaryProjection</a></dt>
<dd>
<div class="block">Offset of the point with respect to the boundary it is projected on.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/Hyperplane.html#getOffset(org.apache.commons.math3.geometry.Point)">getOffset(Point&lt;S&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/Hyperplane.html" title="interface in org.apache.commons.math3.geometry.partitioning">Hyperplane</a></dt>
<dd>
<div class="block">Get the offset (oriented distance) of a point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/LimitAngle.html#getOffset(org.apache.commons.math3.geometry.Point)">getOffset(Point&lt;Sphere1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/LimitAngle.html" title="class in org.apache.commons.math3.geometry.spherical.oned">LimitAngle</a></dt>
<dd>
<div class="block">Get the offset (oriented distance) of a point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html#getOffset(org.apache.commons.math3.geometry.Point)">getOffset(Point&lt;Sphere2D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html" title="class in org.apache.commons.math3.geometry.spherical.twod">Circle</a></dt>
<dd>
<div class="block">Get the offset (oriented distance) of a point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html#getOffset(org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">getOffset(Vector3D)</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html" title="class in org.apache.commons.math3.geometry.spherical.twod">Circle</a></dt>
<dd>
<div class="block">Get the offset (oriented distance) of a direction.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/GLSMultipleLinearRegression.html#getOmegaInverse()">getOmegaInverse()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/GLSMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">GLSMultipleLinearRegression</a></dt>
<dd>
<div class="block">Get the inverse of the covariance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/ComplexField.html#getOne()">getOne()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/ComplexField.html" title="class in org.apache.commons.math3.complex">ComplexField</a></dt>
<dd>
<div class="block">Get the multiplicative identity of the field.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#getOne()">getOne()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Get the constant 1.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#getOne()">getOne()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Get the constant 1.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/Field.html#getOne()">getOne()</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/Field.html" title="interface in org.apache.commons.math3">Field</a></dt>
<dd>
<div class="block">Get the multiplicative identity of the field.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFractionField.html#getOne()">getOne()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFractionField.html" title="class in org.apache.commons.math3.fraction">BigFractionField</a></dt>
<dd>
<div class="block">Get the multiplicative identity of the field.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/FractionField.html#getOne()">getOne()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/FractionField.html" title="class in org.apache.commons.math3.fraction">FractionField</a></dt>
<dd>
<div class="block">Get the multiplicative identity of the field.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigRealField.html#getOne()">getOne()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigRealField.html" title="class in org.apache.commons.math3.util">BigRealField</a></dt>
<dd>
<div class="block">Get the multiplicative identity of the field.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64Field.html#getOne()">getOne()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64Field.html" title="class in org.apache.commons.math3.util">Decimal64Field</a></dt>
<dd>
<div class="block">Get the multiplicative identity of the field.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/BaseMultiStartMultivariateOptimizer.html#getOptima()">getOptima()</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/BaseMultiStartMultivariateOptimizer.html" title="class in org.apache.commons.math3.optim">BaseMultiStartMultivariateOptimizer</a></dt>
<dd>
<div class="block">Gets all the optima found during the last call to <code>optimize</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/MultiStartMultivariateOptimizer.html#getOptima()">getOptima()</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/MultiStartMultivariateOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar">MultiStartMultivariateOptimizer</a></dt>
<dd>
<div class="block">Gets all the optima found during the last call to <code>optimize</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/MultiStartMultivariateVectorOptimizer.html#getOptima()">getOptima()</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.vector.<a href="./org/apache/commons/math3/optim/nonlinear/vector/MultiStartMultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector">MultiStartMultivariateVectorOptimizer</a></dt>
<dd>
<div class="block">Gets all the optima found during the last call to <code>optimize</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/MultiStartUnivariateOptimizer.html#getOptima()">getOptima()</a></span> - Method in class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/MultiStartUnivariateOptimizer.html" title="class in org.apache.commons.math3.optim.univariate">MultiStartUnivariateOptimizer</a></dt>
<dd>
<div class="block">Gets all the optima found during the last call to <code>optimize</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/BaseMultivariateMultiStartOptimizer.html#getOptima()">getOptima()</a></span> - Method in class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/BaseMultivariateMultiStartOptimizer.html" title="class in org.apache.commons.math3.optimization">BaseMultivariateMultiStartOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get all the optima found during the last call to <a href="./org/apache/commons/math3/optimization/BaseMultivariateMultiStartOptimizer.html#optimize(int, FUNC, org.apache.commons.math3.optimization.GoalType, double[])"><code>optimize</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/BaseMultivariateVectorMultiStartOptimizer.html#getOptima()">getOptima()</a></span> - Method in class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/BaseMultivariateVectorMultiStartOptimizer.html" title="class in org.apache.commons.math3.optimization">BaseMultivariateVectorMultiStartOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get all the optima found during the last call to <a href="./org/apache/commons/math3/optimization/BaseMultivariateVectorMultiStartOptimizer.html#optimize(int, FUNC, double[], double[], double[])"><code>optimize</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/UnivariateMultiStartOptimizer.html#getOptima()">getOptima()</a></span> - Method in class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/UnivariateMultiStartOptimizer.html" title="class in org.apache.commons.math3.optimization.univariate">UnivariateMultiStartOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get all the optima found during the last call to <a href="./org/apache/commons/math3/optimization/univariate/UnivariateMultiStartOptimizer.html#optimize(int, FUNC, org.apache.commons.math3.optimization.GoalType, double, double)"><code>optimize</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/AbstractCurveFitter.html#getOptimizer()">getOptimizer()</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/AbstractCurveFitter.html" title="class in org.apache.commons.math3.fitting">AbstractCurveFitter</a></dt>
<dd>
<div class="block">Creates an optimizer set up to fit the appropriate curve.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#getOrder()">getOrder()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Get the derivation order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#getOrder()">getOrder()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Get the derivation order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/DormandPrince54Integrator.html#getOrder()">getOrder()</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/DormandPrince54Integrator.html" title="class in org.apache.commons.math3.ode.nonstiff">DormandPrince54Integrator</a></dt>
<dd>
<div class="block">Get the order of the method.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/DormandPrince853Integrator.html#getOrder()">getOrder()</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/DormandPrince853Integrator.html" title="class in org.apache.commons.math3.ode.nonstiff">DormandPrince853Integrator</a></dt>
<dd>
<div class="block">Get the order of the method.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/EmbeddedRungeKuttaIntegrator.html#getOrder()">getOrder()</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/EmbeddedRungeKuttaIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">EmbeddedRungeKuttaIntegrator</a></dt>
<dd>
<div class="block">Get the order of the method.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/HighamHall54Integrator.html#getOrder()">getOrder()</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/HighamHall54Integrator.html" title="class in org.apache.commons.math3.ode.nonstiff">HighamHall54Integrator</a></dt>
<dd>
<div class="block">Get the order of the method.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/MillerUpdatingRegression.html#getOrderOfRegressors()">getOrderOfRegressors()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/MillerUpdatingRegression.html" title="class in org.apache.commons.math3.stat.regression">MillerUpdatingRegression</a></dt>
<dd>
<div class="block">Gets the order of the regressors, useful if some type of reordering
 has been called.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html#getOrigin()">getOrigin()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Line</a></dt>
<dd>
<div class="block">Get the line point closest to the origin.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#getOrigin()">getOrigin()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block">Get the origin point of the plane frame.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/BoundaryProjection.html#getOriginal()">getOriginal()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/BoundaryProjection.html" title="class in org.apache.commons.math3.geometry.partitioning">BoundaryProjection</a></dt>
<dd>
<div class="block">Get the original point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#getOriginOffset()">getOriginOffset()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Line</a></dt>
<dd>
<div class="block">Get the offset of the origin.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LevenbergMarquardtOptimizer.html#getOrthoTolerance()">getOrthoTolerance()</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LevenbergMarquardtOptimizer.html" title="class in org.apache.commons.math3.fitting.leastsquares">LevenbergMarquardtOptimizer</a></dt>
<dd>
<div class="block">Gets the value of a tuning parameter.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/Vertex.html#getOutgoing()">getOutgoing()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/Vertex.html" title="class in org.apache.commons.math3.geometry.spherical.twod">Vertex</a></dt>
<dd>
<div class="block">Get outgoing edge.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/OutlineExtractor.html#getOutline(org.apache.commons.math3.geometry.euclidean.threed.PolyhedronsSet)">getOutline(PolyhedronsSet)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/OutlineExtractor.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">OutlineExtractor</a></dt>
<dd>
<div class="block">Extract the outline of a polyhedrons set.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldLUDecomposition.html#getP()">getP()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldLUDecomposition.html" title="class in org.apache.commons.math3.linear">FieldLUDecomposition</a></dt>
<dd>
<div class="block">Returns the P rows permutation matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/LUDecomposition.html#getP()">getP()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/LUDecomposition.html" title="class in org.apache.commons.math3.linear">LUDecomposition</a></dt>
<dd>
<div class="block">Returns the P rows permutation matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RRQRDecomposition.html#getP()">getP()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RRQRDecomposition.html" title="class in org.apache.commons.math3.linear">RRQRDecomposition</a></dt>
<dd>
<div class="block">Returns the pivot matrix, P, used in the QR Decomposition of matrix A such that AP = QR.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ParameterizedODE.html#getParameter(java.lang.String)">getParameter(String)</a></span> - Method in interface org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ParameterizedODE.html" title="interface in org.apache.commons.math3.ode">ParameterizedODE</a></dt>
<dd>
<div class="block">Get parameter value from its name.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/RegressionResults.html#getParameterEstimate(int)">getParameterEstimate(int)</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/RegressionResults.html" title="class in org.apache.commons.math3.stat.regression">RegressionResults</a></dt>
<dd>
<div class="block">Returns the parameter estimate for the regressor at the given index.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/RegressionResults.html#getParameterEstimates()">getParameterEstimates()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/RegressionResults.html" title="class in org.apache.commons.math3.stat.regression">RegressionResults</a></dt>
<dd>
<div class="block">Returns a copy of the regression parameters estimates.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LevenbergMarquardtOptimizer.html#getParameterRelativeTolerance()">getParameterRelativeTolerance()</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LevenbergMarquardtOptimizer.html" title="class in org.apache.commons.math3.fitting.leastsquares">LevenbergMarquardtOptimizer</a></dt>
<dd>
<div class="block">Gets the value of a tuning parameter.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresAdapter.html#getParameterSize()">getParameterSize()</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresAdapter.html" title="class in org.apache.commons.math3.fitting.leastsquares">LeastSquaresAdapter</a></dt>
<dd>
<div class="block">Get the number of parameters (columns in the Jacobian) in this problem.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.html#getParameterSize()">getParameterSize()</a></span> - Method in interface org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.html" title="interface in org.apache.commons.math3.fitting.leastsquares">LeastSquaresProblem</a></dt>
<dd>
<div class="block">Get the number of parameters (columns in the Jacobian) in this problem.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractParameterizable.html#getParametersNames()">getParametersNames()</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractParameterizable.html" title="class in org.apache.commons.math3.ode">AbstractParameterizable</a></dt>
<dd>
<div class="block">Get the names of the supported parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/Parameterizable.html#getParametersNames()">getParametersNames()</a></span> - Method in interface org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/Parameterizable.html" title="interface in org.apache.commons.math3.ode">Parameterizable</a></dt>
<dd>
<div class="block">Get the names of the supported parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html#getParent()">getParent()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html" title="class in org.apache.commons.math3.geometry.partitioning">BSPTree</a></dt>
<dd>
<div class="block">Get the parent node.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/MillerUpdatingRegression.html#getPartialCorrelations(int)">getPartialCorrelations(int)</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/MillerUpdatingRegression.html" title="class in org.apache.commons.math3.stat.regression">MillerUpdatingRegression</a></dt>
<dd>
<div class="block">In the original algorithm only the partial correlations of the regressors
 is returned to the user.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#getPartialDerivative(int...)">getPartialDerivative(int...)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Get a partial derivative.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#getPartialDerivativeIndex(int...)">getPartialDerivativeIndex(int...)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Get the index of a partial derivative in the array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#getPartialDerivativeOrders(int)">getPartialDerivativeOrders(int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Get the derivation orders for a specific index in the array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#getPct(java.lang.Comparable)">getPct(Comparable&lt;?&gt;)</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Returns the percentage of values that are equal to v
 (as a proportion between 0 and 1).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#getPct(int)">getPct(int)</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Returns the percentage of values that are equal to v
 (as a proportion between 0 and 1).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#getPct(long)">getPct(long)</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Returns the percentage of values that are equal to v
 (as a proportion between 0 and 1).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#getPct(char)">getPct(char)</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Returns the percentage of values that are equal to v
 (as a proportion between 0 and 1).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getPercentile(double)">getPercentile(double)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Returns an estimate for the pth percentile of the stored values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getPercentileImpl()">getPercentileImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured percentile implementation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html#getPhase(org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">getPhase(Vector3D)</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html" title="class in org.apache.commons.math3.geometry.spherical.twod">Circle</a></dt>
<dd>
<div class="block">Get the phase angle of a direction.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/SphericalCoordinates.html#getPhi()">getPhi()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/SphericalCoordinates.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">SphericalCoordinates</a></dt>
<dd>
<div class="block">Get the polar (co-latitude) angle.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html#getPhi()">getPhi()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html" title="class in org.apache.commons.math3.geometry.spherical.twod">S2Point</a></dt>
<dd>
<div class="block">Get the polar angle \( \varphi \).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#getPi()">getPi()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Get the constant &pi;.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#getPiSplit()">getPiSplit()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Get the constant &pi; split in two pieces.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldLUDecomposition.html#getPivot()">getPivot()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldLUDecomposition.html" title="class in org.apache.commons.math3.linear">FieldLUDecomposition</a></dt>
<dd>
<div class="block">Returns the pivot permutation vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/LUDecomposition.html#getPivot()">getPivot()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/LUDecomposition.html" title="class in org.apache.commons.math3.linear">LUDecomposition</a></dt>
<dd>
<div class="block">Returns the pivot permutation vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html#getPlus()">getPlus()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html" title="class in org.apache.commons.math3.geometry.partitioning">BSPTree</a></dt>
<dd>
<div class="block">Get the tree on the plus side of the cut hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/SubHyperplane.SplitSubHyperplane.html#getPlus()">getPlus()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/SubHyperplane.SplitSubHyperplane.html" title="class in org.apache.commons.math3.geometry.partitioning">SubHyperplane.SplitSubHyperplane</a></dt>
<dd>
<div class="block">Get the part of the sub-hyperplane on the plus side of the splitting hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/ArcsSet.Split.html#getPlus()">getPlus()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/ArcsSet.Split.html" title="class in org.apache.commons.math3.geometry.spherical.oned">ArcsSet.Split</a></dt>
<dd>
<div class="block">Get the part of the arcs set on the plus side of the splitting arc.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/BoundaryAttribute.html#getPlusInside()">getPlusInside()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/BoundaryAttribute.html" title="class in org.apache.commons.math3.geometry.partitioning">BoundaryAttribute</a></dt>
<dd>
<div class="block">Get the part of the node cut sub-hyperplane that belongs to the
 boundary and has the inside of the region on the plus side of
 its underlying hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/BoundaryAttribute.html#getPlusOutside()">getPlusOutside()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/BoundaryAttribute.html" title="class in org.apache.commons.math3.geometry.partitioning">BoundaryAttribute</a></dt>
<dd>
<div class="block">Get the part of the node cut sub-hyperplane that belongs to the
 boundary and has the outside of the region on the plus side of
 its underlying hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/EnumeratedDistribution.html#getPmf()">getPmf()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/EnumeratedDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedDistribution</a></dt>
<dd>
<div class="block">Return the probability mass function as a list of <value, probability> pairs.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/gauss/GaussIntegrator.html#getPoint(int)">getPoint(int)</a></span> - Method in class org.apache.commons.math3.analysis.integration.gauss.<a href="./org/apache/commons/math3/analysis/integration/gauss/GaussIntegrator.html" title="class in org.apache.commons.math3.analysis.integration.gauss">GaussIntegrator</a></dt>
<dd>
<div class="block">Gets the integration point at the given index.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.Evaluation.html#getPoint()">getPoint()</a></span> - Method in interface org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.Evaluation.html" title="interface in org.apache.commons.math3.fitting.leastsquares">LeastSquaresProblem.Evaluation</a></dt>
<dd>
<div class="block">Get the abscissa (independent variables) of this evaluation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/Clusterable.html#getPoint()">getPoint()</a></span> - Method in interface org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/Clusterable.html" title="interface in org.apache.commons.math3.ml.clustering">Clusterable</a></dt>
<dd>
<div class="block">Gets the n-dimensional point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/DoublePoint.html#getPoint()">getPoint()</a></span> - Method in class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/DoublePoint.html" title="class in org.apache.commons.math3.ml.clustering">DoublePoint</a></dt>
<dd>
<div class="block">Gets the n-dimensional point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/AbstractSimplex.html#getPoint(int)">getPoint(int)</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/AbstractSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">AbstractSimplex</a></dt>
<dd>
<div class="block">Get the simplex point stored at the requested <code>index</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/PointValuePair.html#getPoint()">getPoint()</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/PointValuePair.html" title="class in org.apache.commons.math3.optim">PointValuePair</a></dt>
<dd>
<div class="block">Gets the point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/PointVectorValuePair.html#getPoint()">getPoint()</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/PointVectorValuePair.html" title="class in org.apache.commons.math3.optim">PointVectorValuePair</a></dt>
<dd>
<div class="block">Gets the point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/UnivariatePointValuePair.html#getPoint()">getPoint()</a></span> - Method in class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/UnivariatePointValuePair.html" title="class in org.apache.commons.math3.optim.univariate">UnivariatePointValuePair</a></dt>
<dd>
<div class="block">Get the point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/AbstractSimplex.html#getPoint(int)">getPoint(int)</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/AbstractSimplex.html" title="class in org.apache.commons.math3.optimization.direct">AbstractSimplex</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the simplex point stored at the requested <code>index</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/PointValuePair.html#getPoint()">getPoint()</a></span> - Method in class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/PointValuePair.html" title="class in org.apache.commons.math3.optimization">PointValuePair</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Gets the point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/PointVectorValuePair.html#getPoint()">getPoint()</a></span> - Method in class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/PointVectorValuePair.html" title="class in org.apache.commons.math3.optimization">PointVectorValuePair</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Gets the point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/UnivariatePointValuePair.html#getPoint()">getPoint()</a></span> - Method in class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/UnivariatePointValuePair.html" title="class in org.apache.commons.math3.optimization.univariate">UnivariatePointValuePair</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/clustering/EuclideanDoublePoint.html#getPoint()">getPoint()</a></span> - Method in class org.apache.commons.math3.stat.clustering.<a href="./org/apache/commons/math3/stat/clustering/EuclideanDoublePoint.html" title="class in org.apache.commons.math3.stat.clustering">EuclideanDoublePoint</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the n-dimensional point in integer space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/clustering/EuclideanIntegerPoint.html#getPoint()">getPoint()</a></span> - Method in class org.apache.commons.math3.stat.clustering.<a href="./org/apache/commons/math3/stat/clustering/EuclideanIntegerPoint.html" title="class in org.apache.commons.math3.stat.clustering">EuclideanIntegerPoint</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the n-dimensional point in integer space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#getPointAt(org.apache.commons.math3.geometry.euclidean.twod.Vector2D, double)">getPointAt(Vector2D, double)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block">Get one point from the 3D-space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#getPointAt(org.apache.commons.math3.geometry.euclidean.oned.Vector1D, double)">getPointAt(Vector1D, double)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Line</a></dt>
<dd>
<div class="block">Get one point from the plane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html#getPointAt(double)">getPointAt(double)</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html" title="class in org.apache.commons.math3.geometry.spherical.twod">Circle</a></dt>
<dd>
<div class="block">Get a circle point from its phase around the circle.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/Edge.html#getPointAt(double)">getPointAt(double)</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/Edge.html" title="class in org.apache.commons.math3.geometry.spherical.twod">Edge</a></dt>
<dd>
<div class="block">Get an intermediate point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/PointValuePair.html#getPointRef()">getPointRef()</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/PointValuePair.html" title="class in org.apache.commons.math3.optim">PointValuePair</a></dt>
<dd>
<div class="block">Gets a reference to the point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/PointVectorValuePair.html#getPointRef()">getPointRef()</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/PointVectorValuePair.html" title="class in org.apache.commons.math3.optim">PointVectorValuePair</a></dt>
<dd>
<div class="block">Gets a reference to the point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/PointValuePair.html#getPointRef()">getPointRef()</a></span> - Method in class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/PointValuePair.html" title="class in org.apache.commons.math3.optimization">PointValuePair</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Gets a reference to the point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/PointVectorValuePair.html#getPointRef()">getPointRef()</a></span> - Method in class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/PointVectorValuePair.html" title="class in org.apache.commons.math3.optimization">PointVectorValuePair</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Gets a reference to the point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/Cluster.html#getPoints()">getPoints()</a></span> - Method in class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/Cluster.html" title="class in org.apache.commons.math3.ml.clustering">Cluster</a></dt>
<dd>
<div class="block">Get the points contained in the cluster.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/AbstractSimplex.html#getPoints()">getPoints()</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/AbstractSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">AbstractSimplex</a></dt>
<dd>
<div class="block">Get the points of the simplex.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/AbstractSimplex.html#getPoints()">getPoints()</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/AbstractSimplex.html" title="class in org.apache.commons.math3.optimization.direct">AbstractSimplex</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the points of the simplex.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/clustering/Cluster.html#getPoints()">getPoints()</a></span> - Method in class org.apache.commons.math3.stat.clustering.<a href="./org/apache/commons/math3/stat/clustering/Cluster.html" title="class in org.apache.commons.math3.stat.clustering">Cluster</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the points contained in the cluster.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html#getPole()">getPole()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html" title="class in org.apache.commons.math3.geometry.spherical.twod">Circle</a></dt>
<dd>
<div class="block">Get the pole of the circle.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/HermiteInterpolator.html#getPolynomials()">getPolynomials()</a></span> - Method in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/HermiteInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">HermiteInterpolator</a></dt>
<dd>
<div class="block">Compute the interpolation polynomials.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialSplineFunction.html#getPolynomials()">getPolynomials()</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialSplineFunction.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialSplineFunction</a></dt>
<dd>
<div class="block">Get a copy of the interpolating polynomials array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/ListPopulation.html#getPopulationLimit()">getPopulationLimit()</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/ListPopulation.html" title="class in org.apache.commons.math3.genetics">ListPopulation</a></dt>
<dd>
<div class="block">Access the maximum population size.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/Population.html#getPopulationLimit()">getPopulationLimit()</a></span> - Method in interface org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/Population.html" title="interface in org.apache.commons.math3.genetics">Population</a></dt>
<dd>
<div class="block">Access the maximum population size.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/HypergeometricDistribution.html#getPopulationSize()">getPopulationSize()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/HypergeometricDistribution.html" title="class in org.apache.commons.math3.distribution">HypergeometricDistribution</a></dt>
<dd>
<div class="block">Access the population size.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/ListPopulation.html#getPopulationSize()">getPopulationSize()</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/ListPopulation.html" title="class in org.apache.commons.math3.genetics">ListPopulation</a></dt>
<dd>
<div class="block">Access the current population size.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/Population.html#getPopulationSize()">getPopulationSize()</a></span> - Method in interface org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/Population.html" title="interface in org.apache.commons.math3.genetics">Population</a></dt>
<dd>
<div class="block">Access the current population size.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/CMAESOptimizer.PopulationSize.html#getPopulationSize()">getPopulationSize()</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/CMAESOptimizer.PopulationSize.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">CMAESOptimizer.PopulationSize</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.PopulationSize.html#getPopulationSize()">getPopulationSize()</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.PopulationSize.html" title="class in org.apache.commons.math3.optimization.direct">CMAESOptimizer.PopulationSize</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getPopulationVariance()">getPopulationVariance()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Returns the <a href="http://en.wikibooks.org/wiki/Statistics/Summary/Variance">
 population variance</a> of the available values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#getPopulationVariance()">getPopulationVariance()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">Returns the <a href="http://en.wikibooks.org/wiki/Statistics/Summary/Variance">
 population variance</a> of the values that have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#getPopulationVariance()">getPopulationVariance()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the <a href="http://en.wikibooks.org/wiki/Statistics/Summary/Variance">
 population variance</a> of the values that have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Quaternion.html#getPositivePolarForm()">getPositivePolarForm()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex">Quaternion</a></dt>
<dd>
<div class="block">Returns the polar form of the quaternion.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/VectorFormat.html#getPrefix()">getPrefix()</a></span> - Method in class org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/VectorFormat.html" title="class in org.apache.commons.math3.geometry">VectorFormat</a></dt>
<dd>
<div class="block">Get the format prefix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrixFormat.html#getPrefix()">getPrefix()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrixFormat.html" title="class in org.apache.commons.math3.linear">RealMatrixFormat</a></dt>
<dd>
<div class="block">Get the format prefix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVectorFormat.html#getPrefix()">getPrefix()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVectorFormat.html" title="class in org.apache.commons.math3.linear">RealVectorFormat</a></dt>
<dd>
<div class="block">Get the format prefix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/NonMonotonicSequenceException.html#getPrevious()">getPrevious()</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/NonMonotonicSequenceException.html" title="class in org.apache.commons.math3.exception">NonMonotonicSequenceException</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/utilities/AVLTree.Node.html#getPrevious()">getPrevious()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.utilities.<a href="./org/apache/commons/math3/geometry/partitioning/utilities/AVLTree.Node.html" title="class in org.apache.commons.math3.geometry.partitioning.utilities">AVLTree.Node</a></dt>
<dd>
<div class="block">Get the node containing the next smaller or equal element.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#getPreviousTime()">getPreviousTime()</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">Get the previous soft grid point time.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/StepInterpolator.html#getPreviousTime()">getPreviousTime()</a></span> - Method in interface org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/StepInterpolator.html" title="interface in org.apache.commons.math3.ode.sampling">StepInterpolator</a></dt>
<dd>
<div class="block">Get the previous grid point time.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html#getPrimary()">getPrimary()</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html" title="class in org.apache.commons.math3.ode">ExpandableStatefulODE</a></dt>
<dd>
<div class="block">Get the primary set of differential equations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html#getPrimaryMapper()">getPrimaryMapper()</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html" title="class in org.apache.commons.math3.ode">ExpandableStatefulODE</a></dt>
<dd>
<div class="block">Get an equations mapper for the primary equations set.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html#getPrimaryState()">getPrimaryState()</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html" title="class in org.apache.commons.math3.ode">ExpandableStatefulODE</a></dt>
<dd>
<div class="block">Get primary part of the current state.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html#getPrimaryStateDot()">getPrimaryStateDot()</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html" title="class in org.apache.commons.math3.ode">ExpandableStatefulODE</a></dt>
<dd>
<div class="block">Get primary part of the current state derivative.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/BinomialDistribution.html#getProbabilityOfSuccess()">getProbabilityOfSuccess()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/BinomialDistribution.html" title="class in org.apache.commons.math3.distribution">BinomialDistribution</a></dt>
<dd>
<div class="block">Access the probability of success for this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/GeometricDistribution.html#getProbabilityOfSuccess()">getProbabilityOfSuccess()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/GeometricDistribution.html" title="class in org.apache.commons.math3.distribution">GeometricDistribution</a></dt>
<dd>
<div class="block">Access the probability of success for this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/PascalDistribution.html#getProbabilityOfSuccess()">getProbabilityOfSuccess()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/PascalDistribution.html" title="class in org.apache.commons.math3.distribution">PascalDistribution</a></dt>
<dd>
<div class="block">Access the probability of success for this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/AbstractCurveFitter.html#getProblem(java.util.Collection)">getProblem(Collection&lt;WeightedObservedPoint&gt;)</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/AbstractCurveFitter.html" title="class in org.apache.commons.math3.fitting">AbstractCurveFitter</a></dt>
<dd>
<div class="block">Creates a least squares problem corresponding to the appropriate curve.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/GaussianCurveFitter.html#getProblem(java.util.Collection)">getProblem(Collection&lt;WeightedObservedPoint&gt;)</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/GaussianCurveFitter.html" title="class in org.apache.commons.math3.fitting">GaussianCurveFitter</a></dt>
<dd>
<div class="block">Creates a least squares problem corresponding to the appropriate curve.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/HarmonicCurveFitter.html#getProblem(java.util.Collection)">getProblem(Collection&lt;WeightedObservedPoint&gt;)</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/HarmonicCurveFitter.html" title="class in org.apache.commons.math3.fitting">HarmonicCurveFitter</a></dt>
<dd>
<div class="block">Creates a least squares problem corresponding to the appropriate curve.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/PolynomialCurveFitter.html#getProblem(java.util.Collection)">getProblem(Collection&lt;WeightedObservedPoint&gt;)</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/PolynomialCurveFitter.html" title="class in org.apache.commons.math3.fitting">PolynomialCurveFitter</a></dt>
<dd>
<div class="block">Creates a least squares problem corresponding to the appropriate curve.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/filter/DefaultProcessModel.html#getProcessNoise()">getProcessNoise()</a></span> - Method in class org.apache.commons.math3.filter.<a href="./org/apache/commons/math3/filter/DefaultProcessModel.html" title="class in org.apache.commons.math3.filter">DefaultProcessModel</a></dt>
<dd>
<div class="block">Returns the process noise matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/filter/ProcessModel.html#getProcessNoise()">getProcessNoise()</a></span> - Method in interface org.apache.commons.math3.filter.<a href="./org/apache/commons/math3/filter/ProcessModel.html" title="interface in org.apache.commons.math3.filter">ProcessModel</a></dt>
<dd>
<div class="block">Returns the process noise matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/BoundaryProjection.html#getProjected()">getProjected()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/BoundaryProjection.html" title="class in org.apache.commons.math3.geometry.partitioning">BoundaryProjection</a></dt>
<dd>
<div class="block">Projected point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFractionFormat.html#getProperInstance()">getProperInstance()</a></span> - Static method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFractionFormat.html" title="class in org.apache.commons.math3.fraction">BigFractionFormat</a></dt>
<dd>
<div class="block">Returns the default complex format for the current locale.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFractionFormat.html#getProperInstance(java.util.Locale)">getProperInstance(Locale)</a></span> - Static method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFractionFormat.html" title="class in org.apache.commons.math3.fraction">BigFractionFormat</a></dt>
<dd>
<div class="block">Returns the default complex format for the given locale.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/FractionFormat.html#getProperInstance()">getProperInstance()</a></span> - Static method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/FractionFormat.html" title="class in org.apache.commons.math3.fraction">FractionFormat</a></dt>
<dd>
<div class="block">Returns the default complex format for the current locale.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/FractionFormat.html#getProperInstance(java.util.Locale)">getProperInstance(Locale)</a></span> - Static method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/FractionFormat.html" title="class in org.apache.commons.math3.fraction">FractionFormat</a></dt>
<dd>
<div class="block">Returns the default complex format for the given locale.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/QRDecomposition.html#getQ()">getQ()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/QRDecomposition.html" title="class in org.apache.commons.math3.linear">QRDecomposition</a></dt>
<dd>
<div class="block">Returns the matrix Q of the decomposition.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Quaternion.html#getQ0()">getQ0()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex">Quaternion</a></dt>
<dd>
<div class="block">Gets the first component of the quaternion (scalar part).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html#getQ0()">getQ0()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldRotation</a></dt>
<dd>
<div class="block">Get the scalar coordinate of the quaternion.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html#getQ0()">getQ0()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Rotation</a></dt>
<dd>
<div class="block">Get the scalar coordinate of the quaternion.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Quaternion.html#getQ1()">getQ1()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex">Quaternion</a></dt>
<dd>
<div class="block">Gets the second component of the quaternion (first component
 of the vector part).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html#getQ1()">getQ1()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldRotation</a></dt>
<dd>
<div class="block">Get the first coordinate of the vectorial part of the quaternion.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html#getQ1()">getQ1()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Rotation</a></dt>
<dd>
<div class="block">Get the first coordinate of the vectorial part of the quaternion.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Quaternion.html#getQ2()">getQ2()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex">Quaternion</a></dt>
<dd>
<div class="block">Gets the third component of the quaternion (second component
 of the vector part).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html#getQ2()">getQ2()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldRotation</a></dt>
<dd>
<div class="block">Get the second coordinate of the vectorial part of the quaternion.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html#getQ2()">getQ2()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Rotation</a></dt>
<dd>
<div class="block">Get the second coordinate of the vectorial part of the quaternion.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Quaternion.html#getQ3()">getQ3()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex">Quaternion</a></dt>
<dd>
<div class="block">Gets the fourth component of the quaternion (third component
 of the vector part).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html#getQ3()">getQ3()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldRotation</a></dt>
<dd>
<div class="block">Get the third coordinate of the vectorial part of the quaternion.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html#getQ3()">getQ3()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Rotation</a></dt>
<dd>
<div class="block">Get the third coordinate of the vectorial part of the quaternion.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/QRDecomposition.html#getQT()">getQT()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/QRDecomposition.html" title="class in org.apache.commons.math3.linear">QRDecomposition</a></dt>
<dd>
<div class="block">Returns the transpose of the matrix Q of the decomposition.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/rank/Percentile.html#getQuantile()">getQuantile()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.rank.<a href="./org/apache/commons/math3/stat/descriptive/rank/Percentile.html" title="class in org.apache.commons.math3.stat.descriptive.rank">Percentile</a></dt>
<dd>
<div class="block">Returns the value of the quantile field (determines what percentile is
 computed when evaluate() is called with no quantile argument).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/SphericalCoordinates.html#getR()">getR()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/SphericalCoordinates.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">SphericalCoordinates</a></dt>
<dd>
<div class="block">Get the radius.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/QRDecomposition.html#getR()">getR()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/QRDecomposition.html" title="class in org.apache.commons.math3.linear">QRDecomposition</a></dt>
<dd>
<div class="block">Returns the matrix R of the decomposition.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html#getR()">getR()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html" title="class in org.apache.commons.math3.stat.regression">SimpleRegression</a></dt>
<dd>
<div class="block">Returns <a href="http://mathworld.wolfram.com/CorrelationCoefficient.html">
 Pearson's product moment correlation coefficient</a>,
 usually denoted r.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/enclosing/EnclosingBall.html#getRadius()">getRadius()</a></span> - Method in class org.apache.commons.math3.geometry.enclosing.<a href="./org/apache/commons/math3/geometry/enclosing/EnclosingBall.html" title="class in org.apache.commons.math3.geometry.enclosing">EnclosingBall</a></dt>
<dd>
<div class="block">Get the radius of the ball.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#getRadixDigits()">getRadixDigits()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Get the number of radix digits of the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#getRadixDigits()">getRadixDigits()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Get the number of radix digits of the <a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp"><code>Dfp</code></a> instances built by this factory.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/GeneticAlgorithm.html#getRandomGenerator()">getRandomGenerator()</a></span> - Static method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/GeneticAlgorithm.html" title="class in org.apache.commons.math3.genetics">GeneticAlgorithm</a></dt>
<dd>
<div class="block">Returns the (static) random generator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/FuzzyKMeansClusterer.html#getRandomGenerator()">getRandomGenerator()</a></span> - Method in class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/FuzzyKMeansClusterer.html" title="class in org.apache.commons.math3.ml.clustering">FuzzyKMeansClusterer</a></dt>
<dd>
<div class="block">Returns the random generator this instance will use.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/KMeansPlusPlusClusterer.html#getRandomGenerator()">getRandomGenerator()</a></span> - Method in class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/KMeansPlusPlusClusterer.html" title="class in org.apache.commons.math3.ml.clustering">KMeansPlusPlusClusterer</a></dt>
<dd>
<div class="block">Returns the random generator this instance will use.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataGenerator.html#getRandomGenerator()">getRandomGenerator()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random">RandomDataGenerator</a></dt>
<dd>
<div class="block">Returns the RandomGenerator used to generate non-secure random data.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RectangularCholeskyDecomposition.html#getRank()">getRank()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RectangularCholeskyDecomposition.html" title="class in org.apache.commons.math3.linear">RectangularCholeskyDecomposition</a></dt>
<dd>
<div class="block">Get the rank of the symmetric positive semidefinite matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RRQRDecomposition.html#getRank(double)">getRank(double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RRQRDecomposition.html" title="class in org.apache.commons.math3.linear">RRQRDecomposition</a></dt>
<dd>
<div class="block">Return the effective numerical matrix rank.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SingularValueDecomposition.html#getRank()">getRank()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SingularValueDecomposition.html" title="class in org.apache.commons.math3.linear">SingularValueDecomposition</a></dt>
<dd>
<div class="block">Return the effective numerical matrix rank.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/CorrelatedRandomVectorGenerator.html#getRank()">getRank()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/CorrelatedRandomVectorGenerator.html" title="class in org.apache.commons.math3.random">CorrelatedRandomVectorGenerator</a></dt>
<dd>
<div class="block">Get the rank of the covariance matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/SpearmansCorrelation.html#getRankCorrelation()">getRankCorrelation()</a></span> - Method in class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/SpearmansCorrelation.html" title="class in org.apache.commons.math3.stat.correlation">SpearmansCorrelation</a></dt>
<dd>
<div class="block">Returns a <a href="./org/apache/commons/math3/stat/correlation/PearsonsCorrelation.html" title="class in org.apache.commons.math3.stat.correlation"><code>PearsonsCorrelation</code></a> instance constructed from the
 ranked input data.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LevenbergMarquardtOptimizer.html#getRankingThreshold()">getRankingThreshold()</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LevenbergMarquardtOptimizer.html" title="class in org.apache.commons.math3.fitting.leastsquares">LevenbergMarquardtOptimizer</a></dt>
<dd>
<div class="block">Gets the value of a tuning parameter.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/UniformCrossover.html#getRatio()">getRatio()</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/UniformCrossover.html" title="class in org.apache.commons.math3.genetics">UniformCrossover</a></dt>
<dd>
<div class="block">Returns the mixing ratio used by this <a href="./org/apache/commons/math3/genetics/CrossoverPolicy.html" title="interface in org.apache.commons.math3.genetics"><code>CrossoverPolicy</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#getReal()">getReal()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Get the real value of the number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#getReal()">getReal()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Get the real value of the number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#getReal()">getReal()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Access the real part.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/RootsOfUnity.html#getReal(int)">getReal(int)</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/RootsOfUnity.html" title="class in org.apache.commons.math3.complex">RootsOfUnity</a></dt>
<dd>
<div class="block">Get the real part of the <code>k</code>-th <code>n</code>-th root of unity.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#getReal()">getReal()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Get the real value of the number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#getReal()">getReal()</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Get the real value of the number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#getReal()">getReal()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Get the real value of the number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/EigenDecomposition.html#getRealEigenvalue(int)">getRealEigenvalue(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/EigenDecomposition.html" title="class in org.apache.commons.math3.linear">EigenDecomposition</a></dt>
<dd>
<div class="block">Returns the real part of the i<sup>th</sup> eigenvalue of the original
 matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/EigenDecomposition.html#getRealEigenvalues()">getRealEigenvalues()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/EigenDecomposition.html" title="class in org.apache.commons.math3.linear">EigenDecomposition</a></dt>
<dd>
<div class="block">Gets a copy of the real parts of the eigenvalues of the original matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/ComplexFormat.html#getRealFormat()">getRealFormat()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/ComplexFormat.html" title="class in org.apache.commons.math3.complex">ComplexFormat</a></dt>
<dd>
<div class="block">Access the realFormat.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#getReducedFraction(int, int)">getReducedFraction(int, int)</a></span> - Static method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Creates a <code>BigFraction</code> instance with the 2 parts of a fraction
 Y/Z.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#getReducedFraction(int, int)">getReducedFraction(int, int)</a></span> - Static method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">Creates a <code>Fraction</code> instance with the 2 parts
 of a fraction Y/Z.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/RegressionResults.html#getRegressionSumSquares()">getRegressionSumSquares()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/RegressionResults.html" title="class in org.apache.commons.math3.stat.regression">RegressionResults</a></dt>
<dd>
<div class="block">Returns the sum of squared deviations of the predicted y values about
 their mean (which equals the mean of y).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html#getRegressionSumSquares()">getRegressionSumSquares()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html" title="class in org.apache.commons.math3.stat.regression">SimpleRegression</a></dt>
<dd>
<div class="block">Returns the sum of squared deviations of the predicted y values about
 their mean (which equals the mean of y).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/LinearConstraint.html#getRelationship()">getRelationship()</a></span> - Method in class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/LinearConstraint.html" title="class in org.apache.commons.math3.optim.linear">LinearConstraint</a></dt>
<dd>
<div class="block">Gets the relationship between left and right hand sides.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/LinearConstraint.html#getRelationship()">getRelationship()</a></span> - Method in class org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/LinearConstraint.html" title="class in org.apache.commons.math3.optimization.linear">LinearConstraint</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the relationship between left and right hand sides.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html#getRelativeAccuracy()">getRelativeAccuracy()</a></span> - Method in class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">BaseAbstractUnivariateIntegrator</a></dt>
<dd>
<div class="block">Get the actual relative accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/UnivariateIntegrator.html#getRelativeAccuracy()">getRelativeAccuracy()</a></span> - Method in interface org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/UnivariateIntegrator.html" title="interface in org.apache.commons.math3.analysis.integration">UnivariateIntegrator</a></dt>
<dd>
<div class="block">Get the actual relative accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html#getRelativeAccuracy()">getRelativeAccuracy()</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BaseAbstractUnivariateSolver</a></dt>
<dd>
<div class="block">Get the relative accuracy of the solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseUnivariateSolver.html#getRelativeAccuracy()">getRelativeAccuracy()</a></span> - Method in interface org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseUnivariateSolver.html" title="interface in org.apache.commons.math3.analysis.solvers">BaseUnivariateSolver</a></dt>
<dd>
<div class="block">Get the relative accuracy of the solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/BracketingNthOrderBrentSolverDFP.html#getRelativeAccuracy()">getRelativeAccuracy()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/BracketingNthOrderBrentSolverDFP.html" title="class in org.apache.commons.math3.dfp">BracketingNthOrderBrentSolverDFP</a></dt>
<dd>
<div class="block">Get the relative accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/AbstractConvergenceChecker.html#getRelativeThreshold()">getRelativeThreshold()</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/AbstractConvergenceChecker.html" title="class in org.apache.commons.math3.optim">AbstractConvergenceChecker</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/AbstractConvergenceChecker.html#getRelativeThreshold()">getRelativeThreshold()</a></span> - Method in class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/AbstractConvergenceChecker.html" title="class in org.apache.commons.math3.optimization">AbstractConvergenceChecker</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractSubHyperplane.html#getRemainingRegion()">getRemainingRegion()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractSubHyperplane.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractSubHyperplane</a></dt>
<dd>
<div class="block">Get the remaining region of the hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/AbstractListChromosome.html#getRepresentation()">getRepresentation()</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/AbstractListChromosome.html" title="class in org.apache.commons.math3.genetics">AbstractListChromosome</a></dt>
<dd>
<div class="block">Returns the (immutable) inner representation of the chromosome.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DefaultIterativeLinearSolverEvent.html#getResidual()">getResidual()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DefaultIterativeLinearSolverEvent.html" title="class in org.apache.commons.math3.linear">DefaultIterativeLinearSolverEvent</a></dt>
<dd>
<div class="block">
 Returns the residual.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/IterativeLinearSolverEvent.html#getResidual()">getResidual()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/IterativeLinearSolverEvent.html" title="class in org.apache.commons.math3.linear">IterativeLinearSolverEvent</a></dt>
<dd>
<div class="block">
 Returns the residual.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.Evaluation.html#getResiduals()">getResiduals()</a></span> - Method in interface org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.Evaluation.html" title="interface in org.apache.commons.math3.fitting.leastsquares">LeastSquaresProblem.Evaluation</a></dt>
<dd>
<div class="block">Get the weighted residuals.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AbstractStorelessUnivariateStatistic.html#getResult()">getResult()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AbstractStorelessUnivariateStatistic.html" title="class in org.apache.commons.math3.stat.descriptive">AbstractStorelessUnivariateStatistic</a></dt>
<dd>
<div class="block">Returns the current value of the Statistic.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/GeometricMean.html#getResult()">getResult()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/GeometricMean.html" title="class in org.apache.commons.math3.stat.descriptive.moment">GeometricMean</a></dt>
<dd>
<div class="block">Returns the current value of the Statistic.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Kurtosis.html#getResult()">getResult()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Kurtosis.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Kurtosis</a></dt>
<dd>
<div class="block">Returns the current value of the Statistic.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Mean.html#getResult()">getResult()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Mean.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Mean</a></dt>
<dd>
<div class="block">Returns the current value of the Statistic.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/SecondMoment.html#getResult()">getResult()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/SecondMoment.html" title="class in org.apache.commons.math3.stat.descriptive.moment">SecondMoment</a></dt>
<dd>
<div class="block">Returns the current value of the Statistic.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Skewness.html#getResult()">getResult()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Skewness.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Skewness</a></dt>
<dd>
<div class="block">Returns the value of the statistic based on the values that have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html#getResult()">getResult()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html" title="class in org.apache.commons.math3.stat.descriptive.moment">StandardDeviation</a></dt>
<dd>
<div class="block">Returns the current value of the Statistic.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html#getResult()">getResult()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Variance</a></dt>
<dd>
<div class="block">Returns the current value of the Statistic.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/VectorialCovariance.html#getResult()">getResult()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/VectorialCovariance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">VectorialCovariance</a></dt>
<dd>
<div class="block">Get the covariance matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/VectorialMean.html#getResult()">getResult()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/VectorialMean.html" title="class in org.apache.commons.math3.stat.descriptive.moment">VectorialMean</a></dt>
<dd>
<div class="block">Get the mean vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/rank/Max.html#getResult()">getResult()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.rank.<a href="./org/apache/commons/math3/stat/descriptive/rank/Max.html" title="class in org.apache.commons.math3.stat.descriptive.rank">Max</a></dt>
<dd>
<div class="block">Returns the current value of the Statistic.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/rank/Min.html#getResult()">getResult()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.rank.<a href="./org/apache/commons/math3/stat/descriptive/rank/Min.html" title="class in org.apache.commons.math3.stat.descriptive.rank">Min</a></dt>
<dd>
<div class="block">Returns the current value of the Statistic.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StorelessUnivariateStatistic.html#getResult()">getResult()</a></span> - Method in interface org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StorelessUnivariateStatistic.html" title="interface in org.apache.commons.math3.stat.descriptive">StorelessUnivariateStatistic</a></dt>
<dd>
<div class="block">Returns the current value of the Statistic.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/Product.html#getResult()">getResult()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/Product.html" title="class in org.apache.commons.math3.stat.descriptive.summary">Product</a></dt>
<dd>
<div class="block">Returns the current value of the Statistic.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/Sum.html#getResult()">getResult()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/Sum.html" title="class in org.apache.commons.math3.stat.descriptive.summary">Sum</a></dt>
<dd>
<div class="block">Returns the current value of the Statistic.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfLogs.html#getResult()">getResult()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfLogs.html" title="class in org.apache.commons.math3.stat.descriptive.summary">SumOfLogs</a></dt>
<dd>
<div class="block">Returns the current value of the Statistic.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfSquares.html#getResult()">getResult()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfSquares.html" title="class in org.apache.commons.math3.stat.descriptive.summary">SumOfSquares</a></dt>
<dd>
<div class="block">Returns the current value of the Statistic.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#getReverse()">getReverse()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Line</a></dt>
<dd>
<div class="block">Get the reverse of the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/LimitAngle.html#getReverse()">getReverse()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/LimitAngle.html" title="class in org.apache.commons.math3.geometry.spherical.oned">LimitAngle</a></dt>
<dd>
<div class="block">Get the reverse of the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html#getReverse()">getReverse()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html" title="class in org.apache.commons.math3.geometry.spherical.twod">Circle</a></dt>
<dd>
<div class="block">Get the reverse of the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DefaultIterativeLinearSolverEvent.html#getRightHandSideVector()">getRightHandSideVector()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DefaultIterativeLinearSolverEvent.html" title="class in org.apache.commons.math3.linear">DefaultIterativeLinearSolverEvent</a></dt>
<dd>
<div class="block">Returns the current right-hand side of the linear system to be solved.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/IterativeLinearSolverEvent.html#getRightHandSideVector()">getRightHandSideVector()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/IterativeLinearSolverEvent.html" title="class in org.apache.commons.math3.linear">IterativeLinearSolverEvent</a></dt>
<dd>
<div class="block">Returns the current right-hand side of the linear system to be solved.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/AbstractEvaluation.html#getRMS()">getRMS()</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/AbstractEvaluation.html" title="class in org.apache.commons.math3.fitting.leastsquares">AbstractEvaluation</a></dt>
<dd>
<div class="block">Get the normalized cost.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.Evaluation.html#getRMS()">getRMS()</a></span> - Method in interface org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.Evaluation.html" title="interface in org.apache.commons.math3.fitting.leastsquares">LeastSquaresProblem.Evaluation</a></dt>
<dd>
<div class="block">Get the normalized cost.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/AbstractLeastSquaresOptimizer.html#getRMS()">getRMS()</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.vector.jacobian.<a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector.jacobian">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Gets the root-mean-square (RMS) value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#getRMS()">getRMS()</a></span> - Method in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the Root Mean Square value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RectangularCholeskyDecomposition.html#getRootMatrix()">getRootMatrix()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RectangularCholeskyDecomposition.html" title="class in org.apache.commons.math3.linear">RectangularCholeskyDecomposition</a></dt>
<dd>
<div class="block">Get the root of the covariance matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/CorrelatedRandomVectorGenerator.html#getRootMatrix()">getRootMatrix()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/CorrelatedRandomVectorGenerator.html" title="class in org.apache.commons.math3.random">CorrelatedRandomVectorGenerator</a></dt>
<dd>
<div class="block">Get the root of the covariance matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#getRoundingMode()">getRoundingMode()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Get the current rounding mode.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#getRoundingMode()">getRoundingMode()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dd>
<div class="block">Gets the rounding mode for division operations
 The default is <code>RoundingMode.HALF_UP</code></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#getRow(int)">getRow(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Get the entries in row number <code>row</code> as an array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#getRow(int)">getRow(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Get the entries at the given row index.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#getRow(int)">getRow(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Get the entries in row number <code>row</code> as an array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#getRow(int)">getRow(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Get the entries at the given row index.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#getRow(int)">getRow(int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Get the entries in row number <code>row</code> as an array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/NonPositiveDefiniteMatrixException.html#getRow()">getRow()</a></span> - Method in exception org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/NonPositiveDefiniteMatrixException.html" title="class in org.apache.commons.math3.linear">NonPositiveDefiniteMatrixException</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/NonSymmetricMatrixException.html#getRow()">getRow()</a></span> - Method in exception org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/NonSymmetricMatrixException.html" title="class in org.apache.commons.math3.linear">NonSymmetricMatrixException</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#getRow(int)">getRow(int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Get the entries at the given row index.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#getRowDimension()">getRowDimension()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Returns the number of rows in the matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#getRowDimension()">getRowDimension()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Returns the number of rows of this matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AnyMatrix.html#getRowDimension()">getRowDimension()</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AnyMatrix.html" title="interface in org.apache.commons.math3.linear">AnyMatrix</a></dt>
<dd>
<div class="block">Returns the number of rows in the matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html#getRowDimension()">getRowDimension()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowFieldMatrix</a></dt>
<dd>
<div class="block">Returns the number of rows in the matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html#getRowDimension()">getRowDimension()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowRealMatrix</a></dt>
<dd>
<div class="block">Returns the number of rows of this matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#getRowDimension()">getRowDimension()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Returns the number of rows in the matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#getRowDimension()">getRowDimension()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Returns the number of rows of this matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DiagonalMatrix.html#getRowDimension()">getRowDimension()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DiagonalMatrix.html" title="class in org.apache.commons.math3.linear">DiagonalMatrix</a></dt>
<dd>
<div class="block">Returns the number of rows of this matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/JacobiPreconditioner.html#getRowDimension()">getRowDimension()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/JacobiPreconditioner.html" title="class in org.apache.commons.math3.linear">JacobiPreconditioner</a></dt>
<dd>
<div class="block">Returns the dimension of the codomain of this operator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealMatrix.html#getRowDimension()">getRowDimension()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealMatrix.html" title="class in org.apache.commons.math3.linear">OpenMapRealMatrix</a></dt>
<dd>
<div class="block">Returns the number of rows of this matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealLinearOperator.html#getRowDimension()">getRowDimension()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealLinearOperator.html" title="class in org.apache.commons.math3.linear">RealLinearOperator</a></dt>
<dd>
<div class="block">Returns the dimension of the codomain of this operator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldMatrix.html#getRowDimension()">getRowDimension()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldMatrix.html" title="class in org.apache.commons.math3.linear">SparseFieldMatrix</a></dt>
<dd>
<div class="block">Returns the number of rows in the matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#getRowMatrix(int)">getRowMatrix(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Get the entries in row number <code>row</code>
 as a row matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#getRowMatrix(int)">getRowMatrix(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Get the entries at the given row index as a row matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#getRowMatrix(int)">getRowMatrix(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Get the entries in row number <code>row</code>
 as a row matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#getRowMatrix(int)">getRowMatrix(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Get the entries at the given row index as a row matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#getRowMatrix(int)">getRowMatrix(int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Get the entries in row number <code>row</code>
 as a row matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#getRowMatrix(int)">getRowMatrix(int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Get the entries at the given row index as a row matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrixFormat.html#getRowPrefix()">getRowPrefix()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrixFormat.html" title="class in org.apache.commons.math3.linear">RealMatrixFormat</a></dt>
<dd>
<div class="block">Get the format prefix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrixFormat.html#getRowSeparator()">getRowSeparator()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrixFormat.html" title="class in org.apache.commons.math3.linear">RealMatrixFormat</a></dt>
<dd>
<div class="block">Get the format separator between rows of the matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrixFormat.html#getRowSuffix()">getRowSuffix()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrixFormat.html" title="class in org.apache.commons.math3.linear">RealMatrixFormat</a></dt>
<dd>
<div class="block">Get the format suffix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#getRowVector(int)">getRowVector(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Get the entries in row number <code>row</code>
 as a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#getRowVector(int)">getRowVector(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Returns the entries in row number <code>row</code> as a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#getRowVector(int)">getRowVector(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Get the entries in row number <code>row</code>
 as a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#getRowVector(int)">getRowVector(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Returns the entries in row number <code>row</code> as a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#getRowVector(int)">getRowVector(int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Get the entries in row number <code>row</code>
 as a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#getRowVector(int)">getRowVector(int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Returns the entries in row number <code>row</code> as a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html#getRSquare()">getRSquare()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html" title="class in org.apache.commons.math3.stat.regression">SimpleRegression</a></dt>
<dd>
<div class="block">Returns the <a href="http://www.xycoon.com/coefficient1.htm">
 coefficient of determination</a>,
 usually denoted r-square.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/RegressionResults.html#getRSquared()">getRSquared()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/RegressionResults.html" title="class in org.apache.commons.math3.stat.regression">RegressionResults</a></dt>
<dd>
<div class="block">Returns the <a href="http://www.xycoon.com/coefficient1.htm">
 coefficient of multiple determination</a>,
 usually denoted r-square.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/gauss/BaseRuleFactory.html#getRule(int)">getRule(int)</a></span> - Method in class org.apache.commons.math3.analysis.integration.gauss.<a href="./org/apache/commons/math3/analysis/integration/gauss/BaseRuleFactory.html" title="class in org.apache.commons.math3.analysis.integration.gauss">BaseRuleFactory</a></dt>
<dd>
<div class="block">Gets a copy of the quadrature rule with the given number of integration
 points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/gauss/BaseRuleFactory.html#getRuleInternal(int)">getRuleInternal(int)</a></span> - Method in class org.apache.commons.math3.analysis.integration.gauss.<a href="./org/apache/commons/math3/analysis/integration/gauss/BaseRuleFactory.html" title="class in org.apache.commons.math3.analysis.integration.gauss">BaseRuleFactory</a></dt>
<dd>
<div class="block">Gets a rule.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/ComplexField.html#getRuntimeClass()">getRuntimeClass()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/ComplexField.html" title="class in org.apache.commons.math3.complex">ComplexField</a></dt>
<dd>
<div class="block">Returns the runtime class of the FieldElement.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#getRuntimeClass()">getRuntimeClass()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Returns the runtime class of the FieldElement.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/Field.html#getRuntimeClass()">getRuntimeClass()</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/Field.html" title="interface in org.apache.commons.math3">Field</a></dt>
<dd>
<div class="block">Returns the runtime class of the FieldElement.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFractionField.html#getRuntimeClass()">getRuntimeClass()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFractionField.html" title="class in org.apache.commons.math3.fraction">BigFractionField</a></dt>
<dd>
<div class="block">Returns the runtime class of the FieldElement.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/FractionField.html#getRuntimeClass()">getRuntimeClass()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/FractionField.html" title="class in org.apache.commons.math3.fraction">FractionField</a></dt>
<dd>
<div class="block">Returns the runtime class of the FieldElement.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigRealField.html#getRuntimeClass()">getRuntimeClass()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigRealField.html" title="class in org.apache.commons.math3.util">BigRealField</a></dt>
<dd>
<div class="block">Returns the runtime class of the FieldElement.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64Field.html#getRuntimeClass()">getRuntimeClass()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64Field.html" title="class in org.apache.commons.math3.util">Decimal64Field</a></dt>
<dd>
<div class="block">Returns the runtime class of the FieldElement.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SingularValueDecomposition.html#getS()">getS()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SingularValueDecomposition.html" title="class in org.apache.commons.math3.linear">SingularValueDecomposition</a></dt>
<dd>
<div class="block">Returns the diagonal matrix &Sigma; of the decomposition.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/MultistepIntegrator.html#getSafety()">getSafety()</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/MultistepIntegrator.html" title="class in org.apache.commons.math3.ode">MultistepIntegrator</a></dt>
<dd>
<div class="block">Get the safety factor for stepsize control.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/EmbeddedRungeKuttaIntegrator.html#getSafety()">getSafety()</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/EmbeddedRungeKuttaIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">EmbeddedRungeKuttaIntegrator</a></dt>
<dd>
<div class="block">Get the safety factor for stepsize control.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/HypergeometricDistribution.html#getSampleSize()">getSampleSize()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/HypergeometricDistribution.html" title="class in org.apache.commons.math3.distribution">HypergeometricDistribution</a></dt>
<dd>
<div class="block">Access the sample size.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#getSampleStats()">getSampleStats()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random">EmpiricalDistribution</a></dt>
<dd>
<div class="block">Returns a <a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummary.html" title="interface in org.apache.commons.math3.stat.descriptive"><code>StatisticalSummary</code></a> describing this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Quaternion.html#getScalarPart()">getScalarPart()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex">Quaternion</a></dt>
<dd>
<div class="block">Gets the scalar part of the quaternion.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/CauchyDistribution.html#getScale()">getScale()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/CauchyDistribution.html" title="class in org.apache.commons.math3.distribution">CauchyDistribution</a></dt>
<dd>
<div class="block">Access the scale parameter.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/GammaDistribution.html#getScale()">getScale()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/GammaDistribution.html" title="class in org.apache.commons.math3.distribution">GammaDistribution</a></dt>
<dd>
<div class="block">Returns the scale parameter of <code>this</code> distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LevyDistribution.html#getScale()">getScale()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LevyDistribution.html" title="class in org.apache.commons.math3.distribution">LevyDistribution</a></dt>
<dd>
<div class="block">Get the scale parameter of the distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html#getScale()">getScale()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html" title="class in org.apache.commons.math3.distribution">LogNormalDistribution</a></dt>
<dd>
<div class="block">Returns the scale parameter of this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ParetoDistribution.html#getScale()">getScale()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ParetoDistribution.html" title="class in org.apache.commons.math3.distribution">ParetoDistribution</a></dt>
<dd>
<div class="block">Returns the scale parameter of this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/WeibullDistribution.html#getScale()">getScale()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/WeibullDistribution.html" title="class in org.apache.commons.math3.distribution">WeibullDistribution</a></dt>
<dd>
<div class="block">Access the scale parameter, <code>beta</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#getScale()">getScale()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dd>
<div class="block">Sets the scale for division operations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/ChromosomePair.html#getSecond()">getSecond()</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/ChromosomePair.html" title="class in org.apache.commons.math3.genetics">ChromosomePair</a></dt>
<dd>
<div class="block">Access the second chromosome.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Pair.html#getSecond()">getSecond()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Pair.html" title="class in org.apache.commons.math3.util">Pair</a></dt>
<dd>
<div class="block">Get the second element of the pair.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html#getSecondaryMappers()">getSecondaryMappers()</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html" title="class in org.apache.commons.math3.ode">ExpandableStatefulODE</a></dt>
<dd>
<div class="block">Get the equations mappers for the secondary equations sets.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html#getSecondaryState(int)">getSecondaryState(int)</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html" title="class in org.apache.commons.math3.ode">ExpandableStatefulODE</a></dt>
<dd>
<div class="block">Get secondary part of the current state.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html#getSecondaryStateDot(int)">getSecondaryStateDot(int)</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html" title="class in org.apache.commons.math3.ode">ExpandableStatefulODE</a></dt>
<dd>
<div class="block">Get secondary part of the current state derivative.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html#getSecondMoment()">getSecondMoment()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">AggregateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns a statistic related to the Second Central Moment.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#getSecondMoment()">getSecondMoment()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">Returns a statistic related to the Second Central Moment.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/SubLine.html#getSegments()">getSegments()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/SubLine.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">SubLine</a></dt>
<dd>
<div class="block">Get the endpoints of the sub-line.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/SubLine.html#getSegments()">getSegments()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/SubLine.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">SubLine</a></dt>
<dd>
<div class="block">Get the endpoints of the sub-line.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/GeneticAlgorithm.html#getSelectionPolicy()">getSelectionPolicy()</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/GeneticAlgorithm.html" title="class in org.apache.commons.math3.genetics">GeneticAlgorithm</a></dt>
<dd>
<div class="block">Returns the selection policy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/VectorFormat.html#getSeparator()">getSeparator()</a></span> - Method in class org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/VectorFormat.html" title="class in org.apache.commons.math3.geometry">VectorFormat</a></dt>
<dd>
<div class="block">Get the format separator between components.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVectorFormat.html#getSeparator()">getSeparator()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVectorFormat.html" title="class in org.apache.commons.math3.linear">RealVectorFormat</a></dt>
<dd>
<div class="block">Get the format separator between components.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/GammaDistribution.html#getShape()">getShape()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/GammaDistribution.html" title="class in org.apache.commons.math3.distribution">GammaDistribution</a></dt>
<dd>
<div class="block">Returns the shape parameter of <code>this</code> distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html#getShape()">getShape()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html" title="class in org.apache.commons.math3.distribution">LogNormalDistribution</a></dt>
<dd>
<div class="block">Returns the shape parameter of this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ParetoDistribution.html#getShape()">getShape()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ParetoDistribution.html" title="class in org.apache.commons.math3.distribution">ParetoDistribution</a></dt>
<dd>
<div class="block">Returns the shape parameter of this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/WeibullDistribution.html#getShape()">getShape()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/WeibullDistribution.html" title="class in org.apache.commons.math3.distribution">WeibullDistribution</a></dt>
<dd>
<div class="block">Access the shape parameter, <code>alpha</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/AbstractEvaluation.html#getSigma(double)">getSigma(double)</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/AbstractEvaluation.html" title="class in org.apache.commons.math3.fitting.leastsquares">AbstractEvaluation</a></dt>
<dd>
<div class="block">Get an estimate of the standard deviation of the parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.Evaluation.html#getSigma(double)">getSigma(double)</a></span> - Method in interface org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.Evaluation.html" title="interface in org.apache.commons.math3.fitting.leastsquares">LeastSquaresProblem.Evaluation</a></dt>
<dd>
<div class="block">Get an estimate of the standard deviation of the parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/CMAESOptimizer.Sigma.html#getSigma()">getSigma()</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/CMAESOptimizer.Sigma.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">CMAESOptimizer.Sigma</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.Sigma.html#getSigma()">getSigma()</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.Sigma.html" title="class in org.apache.commons.math3.optimization.direct">CMAESOptimizer.Sigma</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/ValueServer.html#getSigma()">getSigma()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/ValueServer.html" title="class in org.apache.commons.math3.random">ValueServer</a></dt>
<dd>
<div class="block">Returns the standard deviation used when operating in <a href="./org/apache/commons/math3/random/ValueServer.html#GAUSSIAN_MODE"><code>ValueServer.GAUSSIAN_MODE</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html#getSignificance()">getSignificance()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html" title="class in org.apache.commons.math3.stat.regression">SimpleRegression</a></dt>
<dd>
<div class="block">Returns the significance level of the slope (equiv) correlation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SingularValueDecomposition.html#getSingularValues()">getSingularValues()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SingularValueDecomposition.html" title="class in org.apache.commons.math3.linear">SingularValueDecomposition</a></dt>
<dd>
<div class="block">Returns the diagonal elements of the matrix &Sigma; of the decomposition.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#getSize()">getSize()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Get the array size required for holding partial derivatives data.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Interval.html#getSize()">getSize()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Interval.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Interval</a></dt>
<dd>
<div class="block">Get the size of the interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/SubOrientedPoint.html#getSize()">getSize()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/SubOrientedPoint.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">SubOrientedPoint</a></dt>
<dd>
<div class="block">Get the size of the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html#getSize()">getSize()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractRegion</a></dt>
<dd>
<div class="block">Get the size of the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractSubHyperplane.html#getSize()">getSize()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractSubHyperplane.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractSubHyperplane</a></dt>
<dd>
<div class="block">Get the size of the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/Region.html#getSize()">getSize()</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/Region.html" title="interface in org.apache.commons.math3.geometry.partitioning">Region</a></dt>
<dd>
<div class="block">Get the size of the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/SubHyperplane.html#getSize()">getSize()</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/SubHyperplane.html" title="interface in org.apache.commons.math3.geometry.partitioning">SubHyperplane</a></dt>
<dd>
<div class="block">Get the size of the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/Arc.html#getSize()">getSize()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/Arc.html" title="class in org.apache.commons.math3.geometry.spherical.oned">Arc</a></dt>
<dd>
<div class="block">Get the angular size of the arc.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/SubLimitAngle.html#getSize()">getSize()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/SubLimitAngle.html" title="class in org.apache.commons.math3.geometry.spherical.oned">SubLimitAngle</a></dt>
<dd>
<div class="block">Get the size of the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/Neuron.html#getSize()">getSize()</a></span> - Method in class org.apache.commons.math3.ml.neuralnet.<a href="./org/apache/commons/math3/ml/neuralnet/Neuron.html" title="class in org.apache.commons.math3.ml.neuralnet">Neuron</a></dt>
<dd>
<div class="block">Gets the length of the feature set.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/oned/NeuronString.html#getSize()">getSize()</a></span> - Method in class org.apache.commons.math3.ml.neuralnet.oned.<a href="./org/apache/commons/math3/ml/neuralnet/oned/NeuronString.html" title="class in org.apache.commons.math3.ml.neuralnet.oned">NeuronString</a></dt>
<dd>
<div class="block">Gets the number of neurons.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/AbstractSimplex.html#getSize()">getSize()</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/AbstractSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">AbstractSimplex</a></dt>
<dd>
<div class="block">Get simplex size.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/AbstractSimplex.html#getSize()">getSize()</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/AbstractSimplex.html" title="class in org.apache.commons.math3.optimization.direct">AbstractSimplex</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get simplex size.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MultidimensionalCounter.html#getSize()">getSize()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MultidimensionalCounter.html" title="class in org.apache.commons.math3.util">MultidimensionalCounter</a></dt>
<dd>
<div class="block">Get the total number of elements.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MultidimensionalCounter.html#getSizes()">getSizes()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MultidimensionalCounter.html" title="class in org.apache.commons.math3.util">MultidimensionalCounter</a></dt>
<dd>
<div class="block">Get the number of multidimensional counter slots in each dimension.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getSkewness()">getSkewness()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Returns the skewness of the available values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getSkewnessImpl()">getSkewnessImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured skewness implementation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html#getSlope()">getSlope()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html" title="class in org.apache.commons.math3.stat.regression">SimpleRegression</a></dt>
<dd>
<div class="block">Returns the slope of the estimated regression line.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html#getSlopeConfidenceInterval()">getSlopeConfidenceInterval()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html" title="class in org.apache.commons.math3.stat.regression">SimpleRegression</a></dt>
<dd>
<div class="block">Returns the half-width of a 95% confidence interval for the slope
 estimate.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html#getSlopeConfidenceInterval(double)">getSlopeConfidenceInterval(double)</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html" title="class in org.apache.commons.math3.stat.regression">SimpleRegression</a></dt>
<dd>
<div class="block">Returns the half-width of a (100-100*alpha)% confidence interval for
 the slope estimate.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html#getSlopeStdErr()">getSlopeStdErr()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html" title="class in org.apache.commons.math3.stat.regression">SimpleRegression</a></dt>
<dd>
<div class="block">Returns the <a href="http://www.xycoon.com/standerrorb(1).htm">standard
 error of the slope estimate</a>,
 usually denoted s(b1).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/utilities/AVLTree.html#getSmallest()">getSmallest()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.utilities.<a href="./org/apache/commons/math3/geometry/partitioning/utilities/AVLTree.html" title="class in org.apache.commons.math3.geometry.partitioning.utilities">AVLTree</a></dt>
<dd>
<div class="block">Get the node whose element is the smallest one in the tree.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DefaultIterativeLinearSolverEvent.html#getSolution()">getSolution()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DefaultIterativeLinearSolverEvent.html" title="class in org.apache.commons.math3.linear">DefaultIterativeLinearSolverEvent</a></dt>
<dd>
<div class="block">Returns the current estimate of the solution to the linear system to be
 solved.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/IterativeLinearSolverEvent.html#getSolution()">getSolution()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/IterativeLinearSolverEvent.html" title="class in org.apache.commons.math3.linear">IterativeLinearSolverEvent</a></dt>
<dd>
<div class="block">Returns the current estimate of the solution to the linear system to be
 solved.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/SolutionCallback.html#getSolution()">getSolution()</a></span> - Method in class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/SolutionCallback.html" title="class in org.apache.commons.math3.optim.linear">SolutionCallback</a></dt>
<dd>
<div class="block">Retrieve the best solution found so far.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/CholeskyDecomposition.html#getSolver()">getSolver()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/CholeskyDecomposition.html" title="class in org.apache.commons.math3.linear">CholeskyDecomposition</a></dt>
<dd>
<div class="block">Get a solver for finding the A &times; X = B solution in least square sense.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/EigenDecomposition.html#getSolver()">getSolver()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/EigenDecomposition.html" title="class in org.apache.commons.math3.linear">EigenDecomposition</a></dt>
<dd>
<div class="block">Gets a solver for finding the A &times; X = B solution in exact
 linear sense.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldLUDecomposition.html#getSolver()">getSolver()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldLUDecomposition.html" title="class in org.apache.commons.math3.linear">FieldLUDecomposition</a></dt>
<dd>
<div class="block">Get a solver for finding the A &times; X = B solution in exact linear sense.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/LUDecomposition.html#getSolver()">getSolver()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/LUDecomposition.html" title="class in org.apache.commons.math3.linear">LUDecomposition</a></dt>
<dd>
<div class="block">Get a solver for finding the A &times; X = B solution in exact linear
 sense.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/QRDecomposition.html#getSolver()">getSolver()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/QRDecomposition.html" title="class in org.apache.commons.math3.linear">QRDecomposition</a></dt>
<dd>
<div class="block">Get a solver for finding the A &times; X = B solution in least square sense.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RRQRDecomposition.html#getSolver()">getSolver()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RRQRDecomposition.html" title="class in org.apache.commons.math3.linear">RRQRDecomposition</a></dt>
<dd>
<div class="block">Get a solver for finding the A &times; X = B solution in least square sense.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SingularValueDecomposition.html#getSolver()">getSolver()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SingularValueDecomposition.html" title="class in org.apache.commons.math3.linear">SingularValueDecomposition</a></dt>
<dd>
<div class="block">Get a solver for finding the A &times; X = B solution in least square sense.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/AbstractRealDistribution.html#getSolverAbsoluteAccuracy()">getSolverAbsoluteAccuracy()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/AbstractRealDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractRealDistribution</a></dt>
<dd>
<div class="block">Returns the solver absolute accuracy for inverse cumulative computation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/BetaDistribution.html#getSolverAbsoluteAccuracy()">getSolverAbsoluteAccuracy()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/BetaDistribution.html" title="class in org.apache.commons.math3.distribution">BetaDistribution</a></dt>
<dd>
<div class="block">Return the absolute accuracy setting of the solver used to estimate
 inverse cumulative probabilities.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/CauchyDistribution.html#getSolverAbsoluteAccuracy()">getSolverAbsoluteAccuracy()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/CauchyDistribution.html" title="class in org.apache.commons.math3.distribution">CauchyDistribution</a></dt>
<dd>
<div class="block">Returns the solver absolute accuracy for inverse cumulative computation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html#getSolverAbsoluteAccuracy()">getSolverAbsoluteAccuracy()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html" title="class in org.apache.commons.math3.distribution">ChiSquaredDistribution</a></dt>
<dd>
<div class="block">Returns the solver absolute accuracy for inverse cumulative computation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html#getSolverAbsoluteAccuracy()">getSolverAbsoluteAccuracy()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html" title="class in org.apache.commons.math3.distribution">ExponentialDistribution</a></dt>
<dd>
<div class="block">Returns the solver absolute accuracy for inverse cumulative computation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/FDistribution.html#getSolverAbsoluteAccuracy()">getSolverAbsoluteAccuracy()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/FDistribution.html" title="class in org.apache.commons.math3.distribution">FDistribution</a></dt>
<dd>
<div class="block">Returns the solver absolute accuracy for inverse cumulative computation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/GammaDistribution.html#getSolverAbsoluteAccuracy()">getSolverAbsoluteAccuracy()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/GammaDistribution.html" title="class in org.apache.commons.math3.distribution">GammaDistribution</a></dt>
<dd>
<div class="block">Returns the solver absolute accuracy for inverse cumulative computation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html#getSolverAbsoluteAccuracy()">getSolverAbsoluteAccuracy()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html" title="class in org.apache.commons.math3.distribution">LogNormalDistribution</a></dt>
<dd>
<div class="block">Returns the solver absolute accuracy for inverse cumulative computation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/NormalDistribution.html#getSolverAbsoluteAccuracy()">getSolverAbsoluteAccuracy()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/NormalDistribution.html" title="class in org.apache.commons.math3.distribution">NormalDistribution</a></dt>
<dd>
<div class="block">Returns the solver absolute accuracy for inverse cumulative computation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ParetoDistribution.html#getSolverAbsoluteAccuracy()">getSolverAbsoluteAccuracy()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ParetoDistribution.html" title="class in org.apache.commons.math3.distribution">ParetoDistribution</a></dt>
<dd>
<div class="block">Returns the solver absolute accuracy for inverse cumulative computation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/TDistribution.html#getSolverAbsoluteAccuracy()">getSolverAbsoluteAccuracy()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/TDistribution.html" title="class in org.apache.commons.math3.distribution">TDistribution</a></dt>
<dd>
<div class="block">Returns the solver absolute accuracy for inverse cumulative computation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/TriangularDistribution.html#getSolverAbsoluteAccuracy()">getSolverAbsoluteAccuracy()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/TriangularDistribution.html" title="class in org.apache.commons.math3.distribution">TriangularDistribution</a></dt>
<dd>
<div class="block">Returns the solver absolute accuracy for inverse cumulative computation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/WeibullDistribution.html#getSolverAbsoluteAccuracy()">getSolverAbsoluteAccuracy()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/WeibullDistribution.html" title="class in org.apache.commons.math3.distribution">WeibullDistribution</a></dt>
<dd>
<div class="block">Return the absolute accuracy setting of the solver used to estimate
 inverse cumulative probabilities.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getSortedValues()">getSortedValues()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Returns the current set of values in an array of double primitives,
 sorted in ascending order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/util/DummyLocalizable.html#getSourceString()">getSourceString()</a></span> - Method in class org.apache.commons.math3.exception.util.<a href="./org/apache/commons/math3/exception/util/DummyLocalizable.html" title="class in org.apache.commons.math3.exception.util">DummyLocalizable</a></dt>
<dd>
<div class="block">Gets the source (non-localized) string.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/util/Localizable.html#getSourceString()">getSourceString()</a></span> - Method in interface org.apache.commons.math3.exception.util.<a href="./org/apache/commons/math3/exception/util/Localizable.html" title="interface in org.apache.commons.math3.exception.util">Localizable</a></dt>
<dd>
<div class="block">Gets the source (non-localized) string.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/util/LocalizedFormats.html#getSourceString()">getSourceString()</a></span> - Method in enum org.apache.commons.math3.exception.util.<a href="./org/apache/commons/math3/exception/util/LocalizedFormats.html" title="enum in org.apache.commons.math3.exception.util">LocalizedFormats</a></dt>
<dd>
<div class="block">Gets the source (non-localized) string.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#getSpace()">getSpace()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Get the space to which the point belongs.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#getSpace()">getSpace()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Get the space to which the point belongs.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#getSpace()">getSpace()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Get the space to which the point belongs.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/Point.html#getSpace()">getSpace()</a></span> - Method in interface org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/Point.html" title="interface in org.apache.commons.math3.geometry">Point</a></dt>
<dd>
<div class="block">Get the space to which the point belongs.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/S1Point.html#getSpace()">getSpace()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/S1Point.html" title="class in org.apache.commons.math3.geometry.spherical.oned">S1Point</a></dt>
<dd>
<div class="block">Get the space to which the point belongs.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html#getSpace()">getSpace()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html" title="class in org.apache.commons.math3.geometry.spherical.twod">S2Point</a></dt>
<dd>
<div class="block">Get the space to which the point belongs.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#getSparsity()">getSparsity()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#getSqr2()">getSqr2()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Get the constant &radic;2.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#getSqr2Reciprocal()">getSqr2Reciprocal()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Get the constant &radic;2 / 2.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#getSqr2Split()">getSqr2Split()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Get the constant &radic;2 split in two pieces.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#getSqr3()">getSqr3()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Get the constant &radic;3.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#getSqr3Reciprocal()">getSqr3Reciprocal()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Get the constant &radic;3 / 3.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/EigenDecomposition.html#getSquareRoot()">getSquareRoot()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/EigenDecomposition.html" title="class in org.apache.commons.math3.linear">EigenDecomposition</a></dt>
<dd>
<div class="block">Computes the square-root of the matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/NormalDistribution.html#getStandardDeviation()">getStandardDeviation()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/NormalDistribution.html" title="class in org.apache.commons.math3.distribution">NormalDistribution</a></dt>
<dd>
<div class="block">Access the standard deviation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html#getStandardDeviation()">getStandardDeviation()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">AggregateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the standard deviation of the available values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getStandardDeviation()">getStandardDeviation()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Returns the standard deviation of the available values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#getStandardDeviation()">getStandardDeviation()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">MultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns an array whose i<sup>th</sup> entry is the standard deviation of the
 i<sup>th</sup> entries of the arrays that have been added using
 <a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#addValue(double[])"><code>MultivariateSummaryStatistics.addValue(double[])</code></a></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StatisticalMultivariateSummary.html#getStandardDeviation()">getStandardDeviation()</a></span> - Method in interface org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StatisticalMultivariateSummary.html" title="interface in org.apache.commons.math3.stat.descriptive">StatisticalMultivariateSummary</a></dt>
<dd>
<div class="block">Returns an array whose i<sup>th</sup> entry is the
 standard deviation of the i<sup>th</sup> entries of the arrays
 that correspond to each multivariate sample</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummary.html#getStandardDeviation()">getStandardDeviation()</a></span> - Method in interface org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummary.html" title="interface in org.apache.commons.math3.stat.descriptive">StatisticalSummary</a></dt>
<dd>
<div class="block">Returns the standard deviation of the available values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummaryValues.html#getStandardDeviation()">getStandardDeviation()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummaryValues.html" title="class in org.apache.commons.math3.stat.descriptive">StatisticalSummaryValues</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#getStandardDeviation()">getStandardDeviation()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">Returns the standard deviation of the values that have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html#getStandardDeviation()">getStandardDeviation()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedDescriptiveStatistics</a></dt>
<dd>
<div class="block">Returns the standard deviation of the available values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html#getStandardDeviation()">getStandardDeviation()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedMultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns an array whose i<sup>th</sup> entry is the standard deviation of the
 i<sup>th</sup> entries of the arrays that have been added using
 <a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#addValue(double[])"><code>MultivariateSummaryStatistics.addValue(double[])</code></a></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#getStandardDeviation()">getStandardDeviation()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the standard deviation of the values that have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/MultivariateNormalDistribution.html#getStandardDeviations()">getStandardDeviations()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/MultivariateNormalDistribution.html" title="class in org.apache.commons.math3.distribution">MultivariateNormalDistribution</a></dt>
<dd>
<div class="block">Gets the square root of each element on the diagonal of the covariance
 matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresAdapter.html#getStart()">getStart()</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresAdapter.html" title="class in org.apache.commons.math3.fitting.leastsquares">LeastSquaresAdapter</a></dt>
<dd>
<div class="block">Gets the initial guess.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.html#getStart()">getStart()</a></span> - Method in interface org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.html" title="interface in org.apache.commons.math3.fitting.leastsquares">LeastSquaresProblem</a></dt>
<dd>
<div class="block">Gets the initial guess.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Segment.html#getStart()">getStart()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Segment.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Segment</a></dt>
<dd>
<div class="block">Get the start point of the segment.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Segment.html#getStart()">getStart()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Segment.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Segment</a></dt>
<dd>
<div class="block">Get the start point of the segment.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/Edge.html#getStart()">getStart()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/Edge.html" title="class in org.apache.commons.math3.geometry.spherical.twod">Edge</a></dt>
<dd>
<div class="block">Get start vertex.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/MultistepIntegrator.html#getStarterIntegrator()">getStarterIntegrator()</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/MultistepIntegrator.html" title="class in org.apache.commons.math3.ode">MultistepIntegrator</a></dt>
<dd>
<div class="block">Get the starter integrator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#getStartIndex()">getStartIndex()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block">Returns the "start index" of the internal array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/BaseMultivariateOptimizer.html#getStartPoint()">getStartPoint()</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/BaseMultivariateOptimizer.html" title="class in org.apache.commons.math3.optim">BaseMultivariateOptimizer</a></dt>
<dd>
<div class="block">Gets the initial guess.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html#getStartPoint()">getStartPoint()</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html#getStartPoint()">getStartPoint()</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateVectorOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Gets the initial values of the optimized parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html#getStartValue()">getStartValue()</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BaseAbstractUnivariateSolver</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/SearchInterval.html#getStartValue()">getStartValue()</a></span> - Method in class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/SearchInterval.html" title="class in org.apache.commons.math3.optim.univariate">SearchInterval</a></dt>
<dd>
<div class="block">Gets the start value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/UnivariateOptimizer.html#getStartValue()">getStartValue()</a></span> - Method in class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/UnivariateOptimizer.html" title="class in org.apache.commons.math3.optim.univariate">UnivariateOptimizer</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/BaseAbstractUnivariateOptimizer.html#getStartValue()">getStartValue()</a></span> - Method in class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/BaseAbstractUnivariateOptimizer.html" title="class in org.apache.commons.math3.optimization.univariate">BaseAbstractUnivariateOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/filter/KalmanFilter.html#getStateDimension()">getStateDimension()</a></span> - Method in class org.apache.commons.math3.filter.<a href="./org/apache/commons/math3/filter/KalmanFilter.html" title="class in org.apache.commons.math3.filter">KalmanFilter</a></dt>
<dd>
<div class="block">Returns the dimension of the state estimation vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/filter/KalmanFilter.html#getStateEstimation()">getStateEstimation()</a></span> - Method in class org.apache.commons.math3.filter.<a href="./org/apache/commons/math3/filter/KalmanFilter.html" title="class in org.apache.commons.math3.filter">KalmanFilter</a></dt>
<dd>
<div class="block">Returns the current state estimation vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/filter/KalmanFilter.html#getStateEstimationVector()">getStateEstimationVector()</a></span> - Method in class org.apache.commons.math3.filter.<a href="./org/apache/commons/math3/filter/KalmanFilter.html" title="class in org.apache.commons.math3.filter">KalmanFilter</a></dt>
<dd>
<div class="block">Returns a copy of the current state estimation vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/filter/DefaultProcessModel.html#getStateTransitionMatrix()">getStateTransitionMatrix()</a></span> - Method in class org.apache.commons.math3.filter.<a href="./org/apache/commons/math3/filter/DefaultProcessModel.html" title="class in org.apache.commons.math3.filter">DefaultProcessModel</a></dt>
<dd>
<div class="block">Returns the state transition matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/filter/ProcessModel.html#getStateTransitionMatrix()">getStateTransitionMatrix()</a></span> - Method in interface org.apache.commons.math3.filter.<a href="./org/apache/commons/math3/filter/ProcessModel.html" title="interface in org.apache.commons.math3.filter">ProcessModel</a></dt>
<dd>
<div class="block">Returns the state transition matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/CMAESOptimizer.html#getStatisticsDHistory()">getStatisticsDHistory()</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/CMAESOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">CMAESOptimizer</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html#getStatisticsDHistory()">getStatisticsDHistory()</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">CMAESOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/CMAESOptimizer.html#getStatisticsFitnessHistory()">getStatisticsFitnessHistory()</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/CMAESOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">CMAESOptimizer</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html#getStatisticsFitnessHistory()">getStatisticsFitnessHistory()</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">CMAESOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/CMAESOptimizer.html#getStatisticsMeanHistory()">getStatisticsMeanHistory()</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/CMAESOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">CMAESOptimizer</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html#getStatisticsMeanHistory()">getStatisticsMeanHistory()</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">CMAESOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/CMAESOptimizer.html#getStatisticsSigmaHistory()">getStatisticsSigmaHistory()</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/CMAESOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">CMAESOptimizer</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html#getStatisticsSigmaHistory()">getStatisticsSigmaHistory()</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">CMAESOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/RegressionResults.html#getStdErrorOfEstimate(int)">getStdErrorOfEstimate(int)</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/RegressionResults.html" title="class in org.apache.commons.math3.stat.regression">RegressionResults</a></dt>
<dd>
<div class="block">Returns the <a href="http://www.xycoon.com/standerrorb(1).htm">standard
 error of the parameter estimate at index</a>,
 usually denoted s(b<sub>index</sub>).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/RegressionResults.html#getStdErrorOfEstimates()">getStdErrorOfEstimates()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/RegressionResults.html" title="class in org.apache.commons.math3.stat.regression">RegressionResults</a></dt>
<dd>
<div class="block">Returns the <a href="http://www.xycoon.com/standerrorb(1).htm">standard
 error of the parameter estimates</a>,
 usually denoted s(b<sub>i</sub>).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractIntegrator.html#getStepHandlers()">getStepHandlers()</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractIntegrator.html" title="class in org.apache.commons.math3.ode">AbstractIntegrator</a></dt>
<dd>
<div class="block">Get all the step handlers that have been added to the integrator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ODEIntegrator.html#getStepHandlers()">getStepHandlers()</a></span> - Method in interface org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ODEIntegrator.html" title="interface in org.apache.commons.math3.ode">ODEIntegrator</a></dt>
<dd>
<div class="block">Get all the step handlers that have been added to the integrator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/FiniteDifferencesDifferentiator.html#getStepSize()">getStepSize()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/FiniteDifferencesDifferentiator.html" title="class in org.apache.commons.math3.analysis.differentiation">FiniteDifferencesDifferentiator</a></dt>
<dd>
<div class="block">Get the step size.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/NonMonotonicSequenceException.html#getStrict()">getStrict()</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/NonMonotonicSequenceException.html" title="class in org.apache.commons.math3.exception">NonMonotonicSequenceException</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#getSubMatrix(int, int, int, int)">getSubMatrix(int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Get a submatrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#getSubMatrix(int[], int[])">getSubMatrix(int[], int[])</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Get a submatrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#getSubMatrix(int, int, int, int)">getSubMatrix(int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Gets a submatrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#getSubMatrix(int[], int[])">getSubMatrix(int[], int[])</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Gets a submatrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#getSubMatrix(int, int, int, int)">getSubMatrix(int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Get a submatrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#getSubMatrix(int, int, int, int)">getSubMatrix(int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Gets a submatrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#getSubMatrix(int, int, int, int)">getSubMatrix(int, int, int, int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Get a submatrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#getSubMatrix(int[], int[])">getSubMatrix(int[], int[])</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Get a submatrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#getSubMatrix(int, int, int, int)">getSubMatrix(int, int, int, int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Gets a submatrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#getSubMatrix(int[], int[])">getSubMatrix(int[], int[])</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Gets a submatrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Euclidean1D.html#getSubSpace()">getSubSpace()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Euclidean1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Euclidean1D</a></dt>
<dd>
<div class="block">Get the n-1 dimension subspace of this space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Euclidean3D.html#getSubSpace()">getSubSpace()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Euclidean3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Euclidean3D</a></dt>
<dd>
<div class="block">Get the n-1 dimension subspace of this space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Euclidean2D.html#getSubSpace()">getSubSpace()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Euclidean2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Euclidean2D</a></dt>
<dd>
<div class="block">Get the n-1 dimension subspace of this space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/Space.html#getSubSpace()">getSubSpace()</a></span> - Method in interface org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/Space.html" title="interface in org.apache.commons.math3.geometry">Space</a></dt>
<dd>
<div class="block">Get the n-1 dimension subspace of this space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/Sphere1D.html#getSubSpace()">getSubSpace()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/Sphere1D.html" title="class in org.apache.commons.math3.geometry.spherical.oned">Sphere1D</a></dt>
<dd>
<div class="block">Get the n-1 dimension subspace of this space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/Sphere2D.html#getSubSpace()">getSubSpace()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/Sphere2D.html" title="class in org.apache.commons.math3.geometry.spherical.twod">Sphere2D</a></dt>
<dd>
<div class="block">Get the n-1 dimension subspace of this space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#getSubVector(int, int)">getSubVector(int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Get a subvector from consecutive elements.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#getSubVector(int, int)">getSubVector(int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Get a subvector from consecutive elements.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVector.html#getSubVector(int, int)">getSubVector(int, int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVector.html" title="interface in org.apache.commons.math3.linear">FieldVector</a></dt>
<dd>
<div class="block">Get a subvector from consecutive elements.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#getSubVector(int, int)">getSubVector(int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Get a subvector from consecutive elements.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#getSubVector(int, int)">getSubVector(int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Get a subvector from consecutive elements.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#getSubVector(int, int)">getSubVector(int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Get a subvector from consecutive elements.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/VectorFormat.html#getSuffix()">getSuffix()</a></span> - Method in class org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/VectorFormat.html" title="class in org.apache.commons.math3.geometry">VectorFormat</a></dt>
<dd>
<div class="block">Get the format suffix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrixFormat.html#getSuffix()">getSuffix()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrixFormat.html" title="class in org.apache.commons.math3.linear">RealMatrixFormat</a></dt>
<dd>
<div class="block">Get the format suffix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVectorFormat.html#getSuffix()">getSuffix()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVectorFormat.html" title="class in org.apache.commons.math3.linear">RealVectorFormat</a></dt>
<dd>
<div class="block">Get the format suffix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html#getSum()">getSum()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">AggregateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the sum of the values that have been added to Univariate.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getSum()">getSum()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Returns the sum of the values that have been added to Univariate.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#getSum()">getSum()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">MultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns an array whose i<sup>th</sup> entry is the sum of the
 i<sup>th</sup> entries of the arrays that have been added using
 <a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#addValue(double[])"><code>MultivariateSummaryStatistics.addValue(double[])</code></a></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StatisticalMultivariateSummary.html#getSum()">getSum()</a></span> - Method in interface org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StatisticalMultivariateSummary.html" title="interface in org.apache.commons.math3.stat.descriptive">StatisticalMultivariateSummary</a></dt>
<dd>
<div class="block">Returns an array whose i<sup>th</sup> entry is the
 sum of the i<sup>th</sup> entries of the arrays
 that correspond to each multivariate sample</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummary.html#getSum()">getSum()</a></span> - Method in interface org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummary.html" title="interface in org.apache.commons.math3.stat.descriptive">StatisticalSummary</a></dt>
<dd>
<div class="block">Returns the sum of the values that have been added to Univariate.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummaryValues.html#getSum()">getSum()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummaryValues.html" title="class in org.apache.commons.math3.stat.descriptive">StatisticalSummaryValues</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#getSum()">getSum()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">Returns the sum of the values that have been added</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html#getSum()">getSum()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedMultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns an array whose i<sup>th</sup> entry is the sum of the
 i<sup>th</sup> entries of the arrays that have been added using
 <a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#addValue(double[])"><code>MultivariateSummaryStatistics.addValue(double[])</code></a></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#getSum()">getSum()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the sum of the values that have been added</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#getSumFreq()">getSumFreq()</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Returns the sum of all frequencies.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getSumImpl()">getSumImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured sum implementation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#getSumImpl()">getSumImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">MultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured Sum implementation</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#getSumImpl()">getSumImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured Sum implementation</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html#getSumImpl()">getSumImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedMultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured Sum implementation</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#getSumImpl()">getSumImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured Sum implementation</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#getSumLog()">getSumLog()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">MultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns an array whose i<sup>th</sup> entry is the sum of logs of the
 i<sup>th</sup> entries of the arrays that have been added using
 <a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#addValue(double[])"><code>MultivariateSummaryStatistics.addValue(double[])</code></a></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StatisticalMultivariateSummary.html#getSumLog()">getSumLog()</a></span> - Method in interface org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StatisticalMultivariateSummary.html" title="interface in org.apache.commons.math3.stat.descriptive">StatisticalMultivariateSummary</a></dt>
<dd>
<div class="block">Returns an array whose i<sup>th</sup> entry is the
 sum of logs of the i<sup>th</sup> entries of the arrays
 that correspond to each multivariate sample</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html#getSumLog()">getSumLog()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedMultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns an array whose i<sup>th</sup> entry is the sum of logs of the
 i<sup>th</sup> entries of the arrays that have been added using
 <a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#addValue(double[])"><code>MultivariateSummaryStatistics.addValue(double[])</code></a></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/GeometricMean.html#getSumLogImpl()">getSumLogImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/GeometricMean.html" title="class in org.apache.commons.math3.stat.descriptive.moment">GeometricMean</a></dt>
<dd>
<div class="block">Returns the currently configured sum of logs implementation</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#getSumLogImpl()">getSumLogImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">MultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured sum of logs implementation</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#getSumLogImpl()">getSumLogImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured sum of logs implementation</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html#getSumLogImpl()">getSumLogImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedMultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured sum of logs implementation</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#getSumLogImpl()">getSumLogImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured sum of logs implementation</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html#getSummary()">getSummary()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">AggregateSummaryStatistics</a></dt>
<dd>
<div class="block">Return a <a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummaryValues.html" title="class in org.apache.commons.math3.stat.descriptive"><code>StatisticalSummaryValues</code></a> instance reporting current
 aggregate statistics.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#getSummary()">getSummary()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">Return a <a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummaryValues.html" title="class in org.apache.commons.math3.stat.descriptive"><code>StatisticalSummaryValues</code></a> instance reporting current
 statistics.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#getSummary()">getSummary()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">Return a <a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummaryValues.html" title="class in org.apache.commons.math3.stat.descriptive"><code>StatisticalSummaryValues</code></a> instance reporting current
 statistics.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html#getSumOfCrossProducts()">getSumOfCrossProducts()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html" title="class in org.apache.commons.math3.stat.regression">SimpleRegression</a></dt>
<dd>
<div class="block">Returns the sum of crossproducts, x<sub>i</sub>*y<sub>i</sub>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html#getSumOfLogs()">getSumOfLogs()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">AggregateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the sum of the logs of all the aggregated data.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#getSumOfLogs()">getSumOfLogs()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">Returns the sum of the logs of the values that have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html#getSumsq()">getSumsq()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">AggregateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the sum of the squares of all the aggregated data.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getSumsq()">getSumsq()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Returns the sum of the squares of the available values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#getSumSq()">getSumSq()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">MultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns an array whose i<sup>th</sup> entry is the sum of squares of the
 i<sup>th</sup> entries of the arrays that have been added using
 <a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#addValue(double[])"><code>MultivariateSummaryStatistics.addValue(double[])</code></a></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StatisticalMultivariateSummary.html#getSumSq()">getSumSq()</a></span> - Method in interface org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StatisticalMultivariateSummary.html" title="interface in org.apache.commons.math3.stat.descriptive">StatisticalMultivariateSummary</a></dt>
<dd>
<div class="block">Returns an array whose i<sup>th</sup> entry is the
 sum of squares of the i<sup>th</sup> entries of the arrays
 that correspond to each multivariate sample</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#getSumsq()">getSumsq()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">Returns the sum of the squares of the values that have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html#getSumSq()">getSumSq()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedMultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns an array whose i<sup>th</sup> entry is the sum of squares of the
 i<sup>th</sup> entries of the arrays that have been added using
 <a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#addValue(double[])"><code>MultivariateSummaryStatistics.addValue(double[])</code></a></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#getSumsq()">getSumsq()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the sum of the squares of the values that have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getSumsqImpl()">getSumsqImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured sum of squares implementation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#getSumsqImpl()">getSumsqImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">MultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured sum of squares implementation</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#getSumsqImpl()">getSumsqImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured sum of squares implementation</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html#getSumsqImpl()">getSumsqImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedMultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured sum of squares implementation</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#getSumsqImpl()">getSumsqImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured sum of squares implementation</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html#getSumSquaredErrors()">getSumSquaredErrors()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html" title="class in org.apache.commons.math3.stat.regression">SimpleRegression</a></dt>
<dd>
<div class="block">Returns the <a href="http://www.xycoon.com/SumOfSquares.htm">
 sum of squared errors</a> (SSE) associated with the regression
 model.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Interval.html#getSup()">getSup()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Interval.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Interval</a></dt>
<dd>
<div class="block">Get the upper bound of the interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html#getSup()">getSup()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">IntervalsSet</a></dt>
<dd>
<div class="block">Get the highest value belonging to the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/Arc.html#getSup()">getSup()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/Arc.html" title="class in org.apache.commons.math3.geometry.spherical.oned">Arc</a></dt>
<dd>
<div class="block">Get the upper angular bound of the arc.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/enclosing/EnclosingBall.html#getSupport()">getSupport()</a></span> - Method in class org.apache.commons.math3.geometry.enclosing.<a href="./org/apache/commons/math3/geometry/enclosing/EnclosingBall.html" title="class in org.apache.commons.math3.geometry.enclosing">EnclosingBall</a></dt>
<dd>
<div class="block">Get the support points used to define the ball.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/BetaDistribution.html#getSupportLowerBound()">getSupportLowerBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/BetaDistribution.html" title="class in org.apache.commons.math3.distribution">BetaDistribution</a></dt>
<dd>
<div class="block">Access the lower bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/BinomialDistribution.html#getSupportLowerBound()">getSupportLowerBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/BinomialDistribution.html" title="class in org.apache.commons.math3.distribution">BinomialDistribution</a></dt>
<dd>
<div class="block">Access the lower bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/CauchyDistribution.html#getSupportLowerBound()">getSupportLowerBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/CauchyDistribution.html" title="class in org.apache.commons.math3.distribution">CauchyDistribution</a></dt>
<dd>
<div class="block">Access the lower bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html#getSupportLowerBound()">getSupportLowerBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html" title="class in org.apache.commons.math3.distribution">ChiSquaredDistribution</a></dt>
<dd>
<div class="block">Access the lower bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html#getSupportLowerBound()">getSupportLowerBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedIntegerDistribution</a></dt>
<dd>
<div class="block">Access the lower bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/EnumeratedRealDistribution.html#getSupportLowerBound()">getSupportLowerBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/EnumeratedRealDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedRealDistribution</a></dt>
<dd>
<div class="block">Access the lower bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html#getSupportLowerBound()">getSupportLowerBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html" title="class in org.apache.commons.math3.distribution">ExponentialDistribution</a></dt>
<dd>
<div class="block">Access the lower bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/FDistribution.html#getSupportLowerBound()">getSupportLowerBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/FDistribution.html" title="class in org.apache.commons.math3.distribution">FDistribution</a></dt>
<dd>
<div class="block">Access the lower bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/GammaDistribution.html#getSupportLowerBound()">getSupportLowerBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/GammaDistribution.html" title="class in org.apache.commons.math3.distribution">GammaDistribution</a></dt>
<dd>
<div class="block">Access the lower bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/GeometricDistribution.html#getSupportLowerBound()">getSupportLowerBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/GeometricDistribution.html" title="class in org.apache.commons.math3.distribution">GeometricDistribution</a></dt>
<dd>
<div class="block">Access the lower bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/HypergeometricDistribution.html#getSupportLowerBound()">getSupportLowerBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/HypergeometricDistribution.html" title="class in org.apache.commons.math3.distribution">HypergeometricDistribution</a></dt>
<dd>
<div class="block">Access the lower bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/IntegerDistribution.html#getSupportLowerBound()">getSupportLowerBound()</a></span> - Method in interface org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/IntegerDistribution.html" title="interface in org.apache.commons.math3.distribution">IntegerDistribution</a></dt>
<dd>
<div class="block">Access the lower bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LevyDistribution.html#getSupportLowerBound()">getSupportLowerBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LevyDistribution.html" title="class in org.apache.commons.math3.distribution">LevyDistribution</a></dt>
<dd>
<div class="block">Access the lower bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html#getSupportLowerBound()">getSupportLowerBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html" title="class in org.apache.commons.math3.distribution">LogNormalDistribution</a></dt>
<dd>
<div class="block">Access the lower bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/NormalDistribution.html#getSupportLowerBound()">getSupportLowerBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/NormalDistribution.html" title="class in org.apache.commons.math3.distribution">NormalDistribution</a></dt>
<dd>
<div class="block">Access the lower bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ParetoDistribution.html#getSupportLowerBound()">getSupportLowerBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ParetoDistribution.html" title="class in org.apache.commons.math3.distribution">ParetoDistribution</a></dt>
<dd>
<div class="block">Access the lower bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/PascalDistribution.html#getSupportLowerBound()">getSupportLowerBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/PascalDistribution.html" title="class in org.apache.commons.math3.distribution">PascalDistribution</a></dt>
<dd>
<div class="block">Access the lower bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/PoissonDistribution.html#getSupportLowerBound()">getSupportLowerBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/PoissonDistribution.html" title="class in org.apache.commons.math3.distribution">PoissonDistribution</a></dt>
<dd>
<div class="block">Access the lower bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/RealDistribution.html#getSupportLowerBound()">getSupportLowerBound()</a></span> - Method in interface org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/RealDistribution.html" title="interface in org.apache.commons.math3.distribution">RealDistribution</a></dt>
<dd>
<div class="block">Access the lower bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/TDistribution.html#getSupportLowerBound()">getSupportLowerBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/TDistribution.html" title="class in org.apache.commons.math3.distribution">TDistribution</a></dt>
<dd>
<div class="block">Access the lower bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/TriangularDistribution.html#getSupportLowerBound()">getSupportLowerBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/TriangularDistribution.html" title="class in org.apache.commons.math3.distribution">TriangularDistribution</a></dt>
<dd>
<div class="block">Access the lower bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/UniformIntegerDistribution.html#getSupportLowerBound()">getSupportLowerBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/UniformIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">UniformIntegerDistribution</a></dt>
<dd>
<div class="block">Access the lower bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html#getSupportLowerBound()">getSupportLowerBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html" title="class in org.apache.commons.math3.distribution">UniformRealDistribution</a></dt>
<dd>
<div class="block">Access the lower bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/WeibullDistribution.html#getSupportLowerBound()">getSupportLowerBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/WeibullDistribution.html" title="class in org.apache.commons.math3.distribution">WeibullDistribution</a></dt>
<dd>
<div class="block">Access the lower bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ZipfDistribution.html#getSupportLowerBound()">getSupportLowerBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ZipfDistribution.html" title="class in org.apache.commons.math3.distribution">ZipfDistribution</a></dt>
<dd>
<div class="block">Access the lower bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#getSupportLowerBound()">getSupportLowerBound()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random">EmpiricalDistribution</a></dt>
<dd>
<div class="block">Access the lower bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/enclosing/EnclosingBall.html#getSupportSize()">getSupportSize()</a></span> - Method in class org.apache.commons.math3.geometry.enclosing.<a href="./org/apache/commons/math3/geometry/enclosing/EnclosingBall.html" title="class in org.apache.commons.math3.geometry.enclosing">EnclosingBall</a></dt>
<dd>
<div class="block">Get the number of support points used to define the ball.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/BetaDistribution.html#getSupportUpperBound()">getSupportUpperBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/BetaDistribution.html" title="class in org.apache.commons.math3.distribution">BetaDistribution</a></dt>
<dd>
<div class="block">Access the upper bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/BinomialDistribution.html#getSupportUpperBound()">getSupportUpperBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/BinomialDistribution.html" title="class in org.apache.commons.math3.distribution">BinomialDistribution</a></dt>
<dd>
<div class="block">Access the upper bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/CauchyDistribution.html#getSupportUpperBound()">getSupportUpperBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/CauchyDistribution.html" title="class in org.apache.commons.math3.distribution">CauchyDistribution</a></dt>
<dd>
<div class="block">Access the upper bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html#getSupportUpperBound()">getSupportUpperBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html" title="class in org.apache.commons.math3.distribution">ChiSquaredDistribution</a></dt>
<dd>
<div class="block">Access the upper bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html#getSupportUpperBound()">getSupportUpperBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedIntegerDistribution</a></dt>
<dd>
<div class="block">Access the upper bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/EnumeratedRealDistribution.html#getSupportUpperBound()">getSupportUpperBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/EnumeratedRealDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedRealDistribution</a></dt>
<dd>
<div class="block">Access the upper bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html#getSupportUpperBound()">getSupportUpperBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html" title="class in org.apache.commons.math3.distribution">ExponentialDistribution</a></dt>
<dd>
<div class="block">Access the upper bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/FDistribution.html#getSupportUpperBound()">getSupportUpperBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/FDistribution.html" title="class in org.apache.commons.math3.distribution">FDistribution</a></dt>
<dd>
<div class="block">Access the upper bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/GammaDistribution.html#getSupportUpperBound()">getSupportUpperBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/GammaDistribution.html" title="class in org.apache.commons.math3.distribution">GammaDistribution</a></dt>
<dd>
<div class="block">Access the upper bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/GeometricDistribution.html#getSupportUpperBound()">getSupportUpperBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/GeometricDistribution.html" title="class in org.apache.commons.math3.distribution">GeometricDistribution</a></dt>
<dd>
<div class="block">Access the upper bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/HypergeometricDistribution.html#getSupportUpperBound()">getSupportUpperBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/HypergeometricDistribution.html" title="class in org.apache.commons.math3.distribution">HypergeometricDistribution</a></dt>
<dd>
<div class="block">Access the upper bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/IntegerDistribution.html#getSupportUpperBound()">getSupportUpperBound()</a></span> - Method in interface org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/IntegerDistribution.html" title="interface in org.apache.commons.math3.distribution">IntegerDistribution</a></dt>
<dd>
<div class="block">Access the upper bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LevyDistribution.html#getSupportUpperBound()">getSupportUpperBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LevyDistribution.html" title="class in org.apache.commons.math3.distribution">LevyDistribution</a></dt>
<dd>
<div class="block">Access the upper bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html#getSupportUpperBound()">getSupportUpperBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html" title="class in org.apache.commons.math3.distribution">LogNormalDistribution</a></dt>
<dd>
<div class="block">Access the upper bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/NormalDistribution.html#getSupportUpperBound()">getSupportUpperBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/NormalDistribution.html" title="class in org.apache.commons.math3.distribution">NormalDistribution</a></dt>
<dd>
<div class="block">Access the upper bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ParetoDistribution.html#getSupportUpperBound()">getSupportUpperBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ParetoDistribution.html" title="class in org.apache.commons.math3.distribution">ParetoDistribution</a></dt>
<dd>
<div class="block">Access the upper bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/PascalDistribution.html#getSupportUpperBound()">getSupportUpperBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/PascalDistribution.html" title="class in org.apache.commons.math3.distribution">PascalDistribution</a></dt>
<dd>
<div class="block">Access the upper bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/PoissonDistribution.html#getSupportUpperBound()">getSupportUpperBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/PoissonDistribution.html" title="class in org.apache.commons.math3.distribution">PoissonDistribution</a></dt>
<dd>
<div class="block">Access the upper bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/RealDistribution.html#getSupportUpperBound()">getSupportUpperBound()</a></span> - Method in interface org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/RealDistribution.html" title="interface in org.apache.commons.math3.distribution">RealDistribution</a></dt>
<dd>
<div class="block">Access the upper bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/TDistribution.html#getSupportUpperBound()">getSupportUpperBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/TDistribution.html" title="class in org.apache.commons.math3.distribution">TDistribution</a></dt>
<dd>
<div class="block">Access the upper bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/TriangularDistribution.html#getSupportUpperBound()">getSupportUpperBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/TriangularDistribution.html" title="class in org.apache.commons.math3.distribution">TriangularDistribution</a></dt>
<dd>
<div class="block">Access the upper bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/UniformIntegerDistribution.html#getSupportUpperBound()">getSupportUpperBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/UniformIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">UniformIntegerDistribution</a></dt>
<dd>
<div class="block">Access the upper bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html#getSupportUpperBound()">getSupportUpperBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html" title="class in org.apache.commons.math3.distribution">UniformRealDistribution</a></dt>
<dd>
<div class="block">Access the upper bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/WeibullDistribution.html#getSupportUpperBound()">getSupportUpperBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/WeibullDistribution.html" title="class in org.apache.commons.math3.distribution">WeibullDistribution</a></dt>
<dd>
<div class="block">Access the upper bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ZipfDistribution.html#getSupportUpperBound()">getSupportUpperBound()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ZipfDistribution.html" title="class in org.apache.commons.math3.distribution">ZipfDistribution</a></dt>
<dd>
<div class="block">Access the upper bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#getSupportUpperBound()">getSupportUpperBound()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random">EmpiricalDistribution</a></dt>
<dd>
<div class="block">Access the upper bound of the support.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/MultivariateVectorOptimizer.html#getTarget()">getTarget()</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.vector.<a href="./org/apache/commons/math3/optim/nonlinear/vector/MultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector">MultivariateVectorOptimizer</a></dt>
<dd>
<div class="block">Gets the observed values to be matched by the objective vector
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/Target.html#getTarget()">getTarget()</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.vector.<a href="./org/apache/commons/math3/optim/nonlinear/vector/Target.html" title="class in org.apache.commons.math3.optim.nonlinear.vector">Target</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Gets the initial guess.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html#getTarget()">getTarget()</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateVectorOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Gets the observed values to be matched by the objective vector
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/Target.html#getTarget()">getTarget()</a></span> - Method in class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/Target.html" title="class in org.apache.commons.math3.optimization">Target</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Gets the initial guess.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html#getTargetRef()">getTargetRef()</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateVectorOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/MultivariateVectorOptimizer.html#getTargetSize()">getTargetSize()</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.vector.<a href="./org/apache/commons/math3/optim/nonlinear/vector/MultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector">MultivariateVectorOptimizer</a></dt>
<dd>
<div class="block">Gets the number of observed values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/SphericalCoordinates.html#getTheta()">getTheta()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/SphericalCoordinates.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">SphericalCoordinates</a></dt>
<dd>
<div class="block">Get the azimuthal angle in x-y plane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html#getTheta()">getTheta()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html" title="class in org.apache.commons.math3.geometry.spherical.twod">S2Point</a></dt>
<dd>
<div class="block">Get the azimuthal angle \( \theta \) in the x-y plane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/NonPositiveDefiniteMatrixException.html#getThreshold()">getThreshold()</a></span> - Method in exception org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/NonPositiveDefiniteMatrixException.html" title="class in org.apache.commons.math3.linear">NonPositiveDefiniteMatrixException</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/NonSymmetricMatrixException.html#getThreshold()">getThreshold()</a></span> - Method in exception org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/NonSymmetricMatrixException.html" title="class in org.apache.commons.math3.linear">NonSymmetricMatrixException</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/util/ExceptionContext.html#getThrowable()">getThrowable()</a></span> - Method in class org.apache.commons.math3.exception.util.<a href="./org/apache/commons/math3/exception/util/ExceptionContext.html" title="class in org.apache.commons.math3.exception.util">ExceptionContext</a></dt>
<dd>
<div class="block">Get a reference to the exception to which the context relates.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/ranking/NaturalRanking.html#getTiesStrategy()">getTiesStrategy()</a></span> - Method in class org.apache.commons.math3.stat.ranking.<a href="./org/apache/commons/math3/stat/ranking/NaturalRanking.html" title="class in org.apache.commons.math3.stat.ranking">NaturalRanking</a></dt>
<dd>
<div class="block">Return the TiesStrategy</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html#getTime()">getTime()</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html" title="class in org.apache.commons.math3.ode">ExpandableStatefulODE</a></dt>
<dd>
<div class="block">Get current time.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/OrientedPoint.html#getTolerance()">getTolerance()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/OrientedPoint.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">OrientedPoint</a></dt>
<dd>
<div class="block">Get the tolerance below which points are considered to belong to the hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html#getTolerance()">getTolerance()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Line</a></dt>
<dd>
<div class="block">Get the tolerance below which points are considered identical.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#getTolerance()">getTolerance()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block">Get the tolerance below which points are considered to belong to the hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#getTolerance()">getTolerance()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Line</a></dt>
<dd>
<div class="block">Get the tolerance below which points are considered to belong to the hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html#getTolerance()">getTolerance()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractRegion</a></dt>
<dd>
<div class="block">Get the tolerance below which points are considered to belong to hyperplanes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/Hyperplane.html#getTolerance()">getTolerance()</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/Hyperplane.html" title="interface in org.apache.commons.math3.geometry.partitioning">Hyperplane</a></dt>
<dd>
<div class="block">Get the tolerance below which points are considered to belong to the hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/Arc.html#getTolerance()">getTolerance()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/Arc.html" title="class in org.apache.commons.math3.geometry.spherical.oned">Arc</a></dt>
<dd>
<div class="block">Get the tolerance below which angles are considered identical.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/LimitAngle.html#getTolerance()">getTolerance()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/LimitAngle.html" title="class in org.apache.commons.math3.geometry.spherical.oned">LimitAngle</a></dt>
<dd>
<div class="block">Get the tolerance below which points are considered to belong to the hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html#getTolerance()">getTolerance()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html" title="class in org.apache.commons.math3.geometry.spherical.twod">Circle</a></dt>
<dd>
<div class="block">Get the tolerance below which points are considered to belong to the hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html#getTotalDimension()">getTotalDimension()</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html" title="class in org.apache.commons.math3.ode">ExpandableStatefulODE</a></dt>
<dd>
<div class="block">Return the dimension of the complete set of equations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/RegressionResults.html#getTotalSumSquares()">getTotalSumSquares()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/RegressionResults.html" title="class in org.apache.commons.math3.stat.regression">RegressionResults</a></dt>
<dd>
<div class="block">Returns the sum of squared deviations of the y values about their mean.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html#getTotalSumSquares()">getTotalSumSquares()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html" title="class in org.apache.commons.math3.stat.regression">SimpleRegression</a></dt>
<dd>
<div class="block">Returns the sum of squared deviations of the y values about their mean.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#getTrace()">getTrace()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Returns the <a href="http://mathworld.wolfram.com/MatrixTrace.html">
 trace</a> of the matrix (the sum of the elements on the main diagonal).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#getTrace()">getTrace()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Returns the <a href="http://mathworld.wolfram.com/MatrixTrace.html">
 trace</a> of the matrix (the sum of the elements on the main diagonal).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#getTrace()">getTrace()</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Returns the <a href="http://mathworld.wolfram.com/MatrixTrace.html">
 trace</a> of the matrix (the sum of the elements on the main diagonal).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#getTrace()">getTrace()</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Returns the <a href="http://mathworld.wolfram.com/MatrixTrace.html">
 trace</a> of the matrix (the sum of the elements on the main diagonal).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#getTransform(java.awt.geom.AffineTransform)">getTransform(AffineTransform)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Line</a></dt>
<dd>
<div class="block">Get a <a href="./org/apache/commons/math3/geometry/partitioning/Transform.html" title="interface in org.apache.commons.math3.geometry.partitioning"><code>Transform</code></a> embedding an affine transform.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html#getTransform(org.apache.commons.math3.geometry.euclidean.threed.Rotation)">getTransform(Rotation)</a></span> - Static method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html" title="class in org.apache.commons.math3.geometry.spherical.twod">Circle</a></dt>
<dd>
<div class="block">Get a <a href="./org/apache/commons/math3/geometry/partitioning/Transform.html" title="interface in org.apache.commons.math3.geometry.partitioning"><code>Transform</code></a> embedding a 3D rotation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/TransformerMap.html#getTransformer(java.lang.Class)">getTransformer(Class&lt;?&gt;)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/TransformerMap.html" title="class in org.apache.commons.math3.util">TransformerMap</a></dt>
<dd>
<div class="block">Returns the Transformer that is mapped to a class
 if mapping is not present, this returns null.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html#getTree(boolean)">getTree(boolean)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractRegion</a></dt>
<dd>
<div class="block">Get the underlying BSP tree.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/Region.html#getTree(boolean)">getTree(boolean)</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/Region.html" title="interface in org.apache.commons.math3.geometry.partitioning">Region</a></dt>
<dd>
<div class="block">Get the underlying BSP tree.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/events/FilterType.html#getTriggeredIncreasing()">getTriggeredIncreasing()</a></span> - Method in enum org.apache.commons.math3.ode.events.<a href="./org/apache/commons/math3/ode/events/FilterType.html" title="enum in org.apache.commons.math3.ode.events">FilterType</a></dt>
<dd>
<div class="block">Get the increasing status of triggered events.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#getTwo()">getTwo()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Get the constant 2.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#getTwo()">getTwo()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Get the constant 2.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#getU()">getU()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block">Get the plane first canonical vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldLUDecomposition.html#getU()">getU()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldLUDecomposition.html" title="class in org.apache.commons.math3.linear">FieldLUDecomposition</a></dt>
<dd>
<div class="block">Returns the matrix U of the decomposition.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/LUDecomposition.html#getU()">getU()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/LUDecomposition.html" title="class in org.apache.commons.math3.linear">LUDecomposition</a></dt>
<dd>
<div class="block">Returns the matrix U of the decomposition.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SingularValueDecomposition.html#getU()">getU()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SingularValueDecomposition.html" title="class in org.apache.commons.math3.linear">SingularValueDecomposition</a></dt>
<dd>
<div class="block">Returns the matrix U of the decomposition.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#getUniqueCount()">getUniqueCount()</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Returns the number of values in the frequency table.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Interval.html#getUpper()">getUpper()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Interval.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Interval</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/geometry/euclidean/oned/Interval.html#getSup()"><code>Interval.getSup()</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/SimpleBounds.html#getUpper()">getUpper()</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/SimpleBounds.html" title="class in org.apache.commons.math3.optim">SimpleBounds</a></dt>
<dd>
<div class="block">Gets the upper bounds.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/SimpleBounds.html#getUpper()">getUpper()</a></span> - Method in class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/SimpleBounds.html" title="class in org.apache.commons.math3.optimization">SimpleBounds</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Gets the lower bounds.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/BaseMultivariateOptimizer.html#getUpperBound()">getUpperBound()</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/BaseMultivariateOptimizer.html" title="class in org.apache.commons.math3.optim">BaseMultivariateOptimizer</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html#getUpperBound()">getUpperBound()</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/interval/ConfidenceInterval.html#getUpperBound()">getUpperBound()</a></span> - Method in class org.apache.commons.math3.stat.interval.<a href="./org/apache/commons/math3/stat/interval/ConfidenceInterval.html" title="class in org.apache.commons.math3.stat.interval">ConfidenceInterval</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#getUpperBounds()">getUpperBounds()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random">EmpiricalDistribution</a></dt>
<dd>
<div class="block">Returns a fresh copy of the array of upper bounds for the bins.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SingularValueDecomposition.html#getUT()">getUT()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SingularValueDecomposition.html" title="class in org.apache.commons.math3.linear">SingularValueDecomposition</a></dt>
<dd>
<div class="block">Returns the transpose of the matrix U of the decomposition.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#getV()">getV()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block">Get the plane second canonical vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/EigenDecomposition.html#getV()">getV()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/EigenDecomposition.html" title="class in org.apache.commons.math3.linear">EigenDecomposition</a></dt>
<dd>
<div class="block">Gets the matrix V of the decomposition.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SingularValueDecomposition.html#getV()">getV()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SingularValueDecomposition.html" title="class in org.apache.commons.math3.linear">SingularValueDecomposition</a></dt>
<dd>
<div class="block">Returns the matrix V of the decomposition.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#getValue()">getValue()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Get the value part of the derivative structure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#getValue()">getValue()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Get the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/util/ExceptionContext.html#getValue(java.lang.String)">getValue(String)</a></span> - Method in class org.apache.commons.math3.exception.util.<a href="./org/apache/commons/math3/exception/util/ExceptionContext.html" title="class in org.apache.commons.math3.exception.util">ExceptionContext</a></dt>
<dd>
<div class="block">Gets the value associated to the given context key.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.OpenMapEntry.html#getValue()">getValue()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.OpenMapEntry.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector.OpenMapEntry</a></dt>
<dd>
<div class="block">Get the value of the entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.Entry.html#getValue()">getValue()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.Entry.html" title="class in org.apache.commons.math3.linear">RealVector.Entry</a></dt>
<dd>
<div class="block">Get the value of the entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/LinearConstraint.html#getValue()">getValue()</a></span> - Method in class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/LinearConstraint.html" title="class in org.apache.commons.math3.optim.linear">LinearConstraint</a></dt>
<dd>
<div class="block">Gets the value of the constraint (right hand side).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/PointVectorValuePair.html#getValue()">getValue()</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/PointVectorValuePair.html" title="class in org.apache.commons.math3.optim">PointVectorValuePair</a></dt>
<dd>
<div class="block">Gets the value of the objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/UnivariatePointValuePair.html#getValue()">getValue()</a></span> - Method in class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/UnivariatePointValuePair.html" title="class in org.apache.commons.math3.optim.univariate">UnivariatePointValuePair</a></dt>
<dd>
<div class="block">Get the value of the objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/LinearConstraint.html#getValue()">getValue()</a></span> - Method in class org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/LinearConstraint.html" title="class in org.apache.commons.math3.optimization.linear">LinearConstraint</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the value of the constraint (right hand side).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/LinearObjectiveFunction.html#getValue(double[])">getValue(double[])</a></span> - Method in class org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/LinearObjectiveFunction.html" title="class in org.apache.commons.math3.optimization.linear">LinearObjectiveFunction</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Compute the value of the linear equation at the current point</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/LinearObjectiveFunction.html#getValue(org.apache.commons.math3.linear.RealVector)">getValue(RealVector)</a></span> - Method in class org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/LinearObjectiveFunction.html" title="class in org.apache.commons.math3.optimization.linear">LinearObjectiveFunction</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Compute the value of the linear equation at the current point</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/PointVectorValuePair.html#getValue()">getValue()</a></span> - Method in class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/PointVectorValuePair.html" title="class in org.apache.commons.math3.optimization">PointVectorValuePair</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Gets the value of the objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/UnivariatePointValuePair.html#getValue()">getValue()</a></span> - Method in class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/UnivariatePointValuePair.html" title="class in org.apache.commons.math3.optimization.univariate">UnivariatePointValuePair</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the value of the objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Pair.html#getValue()">getValue()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Pair.html" title="class in org.apache.commons.math3.util">Pair</a></dt>
<dd>
<div class="block">Get the value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/PointVectorValuePair.html#getValueRef()">getValueRef()</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/PointVectorValuePair.html" title="class in org.apache.commons.math3.optim">PointVectorValuePair</a></dt>
<dd>
<div class="block">Gets a reference to the value of the objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/PointVectorValuePair.html#getValueRef()">getValueRef()</a></span> - Method in class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/PointVectorValuePair.html" title="class in org.apache.commons.math3.optimization">PointVectorValuePair</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Gets a reference to the value of the objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getValues()">getValues()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Returns the current set of values in an array of double primitives.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html#getValues()">getValues()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedDescriptiveStatistics</a></dt>
<dd>
<div class="block">Returns the current set of values in an array of double primitives.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/ValueServer.html#getValuesFileURL()">getValuesFileURL()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/ValueServer.html" title="class in org.apache.commons.math3.random">ValueServer</a></dt>
<dd>
<div class="block">Returns the URL for the file used to build the empirical distribution
 when using <a href="./org/apache/commons/math3/random/ValueServer.html#DIGEST_MODE"><code>ValueServer.DIGEST_MODE</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html#getVariance()">getVariance()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AggregateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">AggregateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the variance of the available values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getVariance()">getVariance()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Returns the (sample) variance of the available values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummary.html#getVariance()">getVariance()</a></span> - Method in interface org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummary.html" title="interface in org.apache.commons.math3.stat.descriptive">StatisticalSummary</a></dt>
<dd>
<div class="block">Returns the variance of the available values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummaryValues.html#getVariance()">getVariance()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummaryValues.html" title="class in org.apache.commons.math3.stat.descriptive">StatisticalSummaryValues</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#getVariance()">getVariance()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">Returns the (sample) variance of the available values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#getVariance()">getVariance()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the (sample) variance of the available values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html#getVarianceDirection()">getVarianceDirection()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">SemiVariance</a></dt>
<dd>
<div class="block">Returns the varianceDirection property.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getVarianceImpl()">getVarianceImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured variance implementation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#getVarianceImpl()">getVarianceImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured variance implementation</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#getVarianceImpl()">getVarianceImpl()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">Returns the currently configured variance implementation</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/S1Point.html#getVector()">getVector()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/S1Point.html" title="class in org.apache.commons.math3.geometry.spherical.oned">S1Point</a></dt>
<dd>
<div class="block">Get the corresponding normalized vector in the 2D euclidean space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html#getVector()">getVector()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html" title="class in org.apache.commons.math3.geometry.spherical.twod">S2Point</a></dt>
<dd>
<div class="block">Get the corresponding normalized vector in the 3D euclidean space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Quaternion.html#getVectorPart()">getVectorPart()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex">Quaternion</a></dt>
<dd>
<div class="block">Gets the three components of the vector part of the quaternion.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/hull/ConvexHull2D.html#getVertices()">getVertices()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.hull.<a href="./org/apache/commons/math3/geometry/euclidean/twod/hull/ConvexHull2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod.hull">ConvexHull2D</a></dt>
<dd>
<div class="block">Get the vertices of the convex hull.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/PolygonsSet.html#getVertices()">getVertices()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/PolygonsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">PolygonsSet</a></dt>
<dd>
<div class="block">Get the vertices of the polygon.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/hull/ConvexHull.html#getVertices()">getVertices()</a></span> - Method in interface org.apache.commons.math3.geometry.hull.<a href="./org/apache/commons/math3/geometry/hull/ConvexHull.html" title="interface in org.apache.commons.math3.geometry.hull">ConvexHull</a></dt>
<dd>
<div class="block">Get the vertices of the convex hull.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/EigenDecomposition.html#getVT()">getVT()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/EigenDecomposition.html" title="class in org.apache.commons.math3.linear">EigenDecomposition</a></dt>
<dd>
<div class="block">Gets the transpose of the matrix V of the decomposition.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SingularValueDecomposition.html#getVT()">getVT()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SingularValueDecomposition.html" title="class in org.apache.commons.math3.linear">SingularValueDecomposition</a></dt>
<dd>
<div class="block">Returns the transpose of the matrix V of the decomposition.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/gauss/GaussIntegrator.html#getWeight(int)">getWeight(int)</a></span> - Method in class org.apache.commons.math3.analysis.integration.gauss.<a href="./org/apache/commons/math3/analysis/integration/gauss/GaussIntegrator.html" title="class in org.apache.commons.math3.analysis.integration.gauss">GaussIntegrator</a></dt>
<dd>
<div class="block">Gets the weight of the integration point at the given index.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/WeightedObservedPoint.html#getWeight()">getWeight()</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/WeightedObservedPoint.html" title="class in org.apache.commons.math3.fitting">WeightedObservedPoint</a></dt>
<dd>
<div class="block">Gets the weight of the measurement in the fitting process.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/MultivariateVectorOptimizer.html#getWeight()">getWeight()</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.vector.<a href="./org/apache/commons/math3/optim/nonlinear/vector/MultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector">MultivariateVectorOptimizer</a></dt>
<dd>
<div class="block">Gets the weight matrix of the observations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/Weight.html#getWeight()">getWeight()</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.vector.<a href="./org/apache/commons/math3/optim/nonlinear/vector/Weight.html" title="class in org.apache.commons.math3.optim.nonlinear.vector">Weight</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Gets the initial guess.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html#getWeight()">getWeight()</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateVectorOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Gets the weight matrix of the observations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/fitting/WeightedObservedPoint.html#getWeight()">getWeight()</a></span> - Method in class org.apache.commons.math3.optimization.fitting.<a href="./org/apache/commons/math3/optimization/fitting/WeightedObservedPoint.html" title="class in org.apache.commons.math3.optimization.fitting">WeightedObservedPoint</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the weight of the measurement in the fitting process.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/Weight.html#getWeight()">getWeight()</a></span> - Method in class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/Weight.html" title="class in org.apache.commons.math3.optimization">Weight</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Gets the initial guess.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html#getWeightRef()">getWeightRef()</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateVectorOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/AbstractLeastSquaresOptimizer.html#getWeightSquareRoot()">getWeightSquareRoot()</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.vector.jacobian.<a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector.jacobian">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Gets the square-root of the weight matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#getWeightSquareRoot()">getWeightSquareRoot()</a></span> - Method in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Gets the square-root of the weight matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/ProperBigFractionFormat.html#getWholeFormat()">getWholeFormat()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/ProperBigFractionFormat.html" title="class in org.apache.commons.math3.fraction">ProperBigFractionFormat</a></dt>
<dd>
<div class="block">Access the whole format.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/ProperFractionFormat.html#getWholeFormat()">getWholeFormat()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/ProperFractionFormat.html" title="class in org.apache.commons.math3.fraction">ProperFractionFormat</a></dt>
<dd>
<div class="block">Access the whole format.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/interval/IntervalUtils.html#getWilsonScoreInterval(int, int, double)">getWilsonScoreInterval(int, int, double)</a></span> - Static method in class org.apache.commons.math3.stat.interval.<a href="./org/apache/commons/math3/stat/interval/IntervalUtils.html" title="class in org.apache.commons.math3.stat.interval">IntervalUtils</a></dt>
<dd>
<div class="block">Create a Wilson score binomial confidence interval for the true
 probability of success of an unknown binomial distribution with the given
 observed number of trials, successes and confidence level.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getWindowSize()">getWindowSize()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Returns the maximum number of values that can be stored in the
 dataset, or INFINITE_WINDOW (-1) if there is no limit.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html#getWindowSize()">getWindowSize()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedDescriptiveStatistics</a></dt>
<dd>
<div class="block">Returns the maximum number of values that can be stored in the
 dataset, or INFINITE_WINDOW (-1) if there is no limit.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixDimensionMismatchException.html#getWrongColumnDimension()">getWrongColumnDimension()</a></span> - Method in exception org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixDimensionMismatchException.html" title="class in org.apache.commons.math3.linear">MatrixDimensionMismatchException</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MultiDimensionMismatchException.html#getWrongDimension(int)">getWrongDimension(int)</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MultiDimensionMismatchException.html" title="class in org.apache.commons.math3.exception">MultiDimensionMismatchException</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MultiDimensionMismatchException.html#getWrongDimensions()">getWrongDimensions()</a></span> - Method in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MultiDimensionMismatchException.html" title="class in org.apache.commons.math3.exception">MultiDimensionMismatchException</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixDimensionMismatchException.html#getWrongRowDimension()">getWrongRowDimension()</a></span> - Method in exception org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixDimensionMismatchException.html" title="class in org.apache.commons.math3.linear">MatrixDimensionMismatchException</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/WeightedObservedPoint.html#getX()">getX()</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/WeightedObservedPoint.html" title="class in org.apache.commons.math3.fitting">WeightedObservedPoint</a></dt>
<dd>
<div class="block">Gets the abscissa of the point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#getX()">getX()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Get the abscissa of the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#getX()">getX()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Get the abscissa of the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#getX()">getX()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Get the abscissa of the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#getX()">getX()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Get the abscissa of the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/fitting/WeightedObservedPoint.html#getX()">getX()</a></span> - Method in class org.apache.commons.math3.optimization.fitting.<a href="./org/apache/commons/math3/optimization/fitting/WeightedObservedPoint.html" title="class in org.apache.commons.math3.optimization.fitting">WeightedObservedPoint</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the abscissa of the point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html#getX()">getX()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">AbstractMultipleLinearRegression</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html#getXAxis()">getXAxis()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html" title="class in org.apache.commons.math3.geometry.spherical.twod">Circle</a></dt>
<dd>
<div class="block">Get the X axis of the circle.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html#getXSumSquares()">getXSumSquares()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html" title="class in org.apache.commons.math3.stat.regression">SimpleRegression</a></dt>
<dd>
<div class="block">Returns the sum of squared deviations of the x values about their mean.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/WeightedObservedPoint.html#getY()">getY()</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/WeightedObservedPoint.html" title="class in org.apache.commons.math3.fitting">WeightedObservedPoint</a></dt>
<dd>
<div class="block">Gets the observed value of the function at x.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#getY()">getY()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Get the ordinate of the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#getY()">getY()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Get the ordinate of the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#getY()">getY()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Get the ordinate of the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/fitting/WeightedObservedPoint.html#getY()">getY()</a></span> - Method in class org.apache.commons.math3.optimization.fitting.<a href="./org/apache/commons/math3/optimization/fitting/WeightedObservedPoint.html" title="class in org.apache.commons.math3.optimization.fitting">WeightedObservedPoint</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the observed value of the function at x.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html#getY()">getY()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">AbstractMultipleLinearRegression</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html#getYAxis()">getYAxis()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html" title="class in org.apache.commons.math3.geometry.spherical.twod">Circle</a></dt>
<dd>
<div class="block">Get the Y axis of the circle.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#getZ()">getZ()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Get the height of the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#getZ()">getZ()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Get the height of the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/ComplexField.html#getZero()">getZero()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/ComplexField.html" title="class in org.apache.commons.math3.complex">ComplexField</a></dt>
<dd>
<div class="block">Get the additive identity of the field.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#getZero()">getZero()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Get the constant 0.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#getZero()">getZero()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Get the constant 0.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/Field.html#getZero()">getZero()</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/Field.html" title="interface in org.apache.commons.math3">Field</a></dt>
<dd>
<div class="block">Get the additive identity of the field.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFractionField.html#getZero()">getZero()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFractionField.html" title="class in org.apache.commons.math3.fraction">BigFractionField</a></dt>
<dd>
<div class="block">Get the additive identity of the field.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/FractionField.html#getZero()">getZero()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/FractionField.html" title="class in org.apache.commons.math3.fraction">FractionField</a></dt>
<dd>
<div class="block">Get the additive identity of the field.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#getZero()">getZero()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Get the null vector of the vectorial space or origin point of the affine space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#getZero()">getZero()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Get the null vector of the vectorial space or origin point of the affine space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#getZero()">getZero()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Get the null vector of the vectorial space or origin point of the affine space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/Vector.html#getZero()">getZero()</a></span> - Method in interface org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/Vector.html" title="interface in org.apache.commons.math3.geometry">Vector</a></dt>
<dd>
<div class="block">Get the null vector of the vectorial space or origin point of the affine space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigRealField.html#getZero()">getZero()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigRealField.html" title="class in org.apache.commons.math3.util">BigRealField</a></dt>
<dd>
<div class="block">Get the additive identity of the field.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64Field.html#getZero()">getZero()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64Field.html" title="class in org.apache.commons.math3.util">Decimal64Field</a></dt>
<dd>
<div class="block">Get the additive identity of the field.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/nonstiff/GillIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff"><span class="strong">GillIntegrator</span></a> - Class in <a href="./org/apache/commons/math3/ode/nonstiff/package-summary.html">org.apache.commons.math3.ode.nonstiff</a></dt>
<dd>
<div class="block">This class implements the Gill fourth order Runge-Kutta
 integrator for Ordinary Differential Equations .</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/GillIntegrator.html#GillIntegrator(double)">GillIntegrator(double)</a></span> - Constructor for class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/GillIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">GillIntegrator</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/regression/GLSMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression"><span class="strong">GLSMultipleLinearRegression</span></a> - Class in <a href="./org/apache/commons/math3/stat/regression/package-summary.html">org.apache.commons.math3.stat.regression</a></dt>
<dd>
<div class="block">The GLS implementation of multiple linear regression.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/GLSMultipleLinearRegression.html#GLSMultipleLinearRegression()">GLSMultipleLinearRegression()</a></span> - Constructor for class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/GLSMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">GLSMultipleLinearRegression</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/scalar/GoalType.html" title="enum in org.apache.commons.math3.optim.nonlinear.scalar"><span class="strong">GoalType</span></a> - Enum in <a href="./org/apache/commons/math3/optim/nonlinear/scalar/package-summary.html">org.apache.commons.math3.optim.nonlinear.scalar</a></dt>
<dd>
<div class="block">Goal type for an optimization problem (minimization or maximization of
 a scalar function.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/GoalType.html" title="enum in org.apache.commons.math3.optimization"><span class="strong">GoalType</span></a> - Enum in <a href="./org/apache/commons/math3/optimization/package-summary.html">org.apache.commons.math3.optimization</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/DifferentiableMultivariateFunction.html#gradient()">gradient()</a></span> - Method in interface org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/DifferentiableMultivariateFunction.html" title="interface in org.apache.commons.math3.analysis">DifferentiableMultivariateFunction</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Returns the gradient function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Gaussian.Parametric.html#gradient(double, double...)">gradient(double, double...)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Gaussian.Parametric.html" title="class in org.apache.commons.math3.analysis.function">Gaussian.Parametric</a></dt>
<dd>
<div class="block">Computes the value of the gradient at <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/HarmonicOscillator.Parametric.html#gradient(double, double...)">gradient(double, double...)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/HarmonicOscillator.Parametric.html" title="class in org.apache.commons.math3.analysis.function">HarmonicOscillator.Parametric</a></dt>
<dd>
<div class="block">Computes the value of the gradient at <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Logistic.Parametric.html#gradient(double, double...)">gradient(double, double...)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Logistic.Parametric.html" title="class in org.apache.commons.math3.analysis.function">Logistic.Parametric</a></dt>
<dd>
<div class="block">Computes the value of the gradient at <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Logit.Parametric.html#gradient(double, double...)">gradient(double, double...)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Logit.Parametric.html" title="class in org.apache.commons.math3.analysis.function">Logit.Parametric</a></dt>
<dd>
<div class="block">Computes the value of the gradient at <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Sigmoid.Parametric.html#gradient(double, double...)">gradient(double, double...)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Sigmoid.Parametric.html" title="class in org.apache.commons.math3.analysis.function">Sigmoid.Parametric</a></dt>
<dd>
<div class="block">Computes the value of the gradient at <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/ParametricUnivariateFunction.html#gradient(double, double...)">gradient(double, double...)</a></span> - Method in interface org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/ParametricUnivariateFunction.html" title="interface in org.apache.commons.math3.analysis">ParametricUnivariateFunction</a></dt>
<dd>
<div class="block">Compute the gradient of the function with respect to its parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.Parametric.html#gradient(double, double...)">gradient(double, double...)</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.Parametric.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunction.Parametric</a></dt>
<dd>
<div class="block">Compute the gradient of the function with respect to its parameters.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/differentiation/GradientFunction.html" title="class in org.apache.commons.math3.analysis.differentiation"><span class="strong">GradientFunction</span></a> - Class in <a href="./org/apache/commons/math3/analysis/differentiation/package-summary.html">org.apache.commons.math3.analysis.differentiation</a></dt>
<dd>
<div class="block">Class representing the gradient of a multivariate function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/GradientFunction.html#GradientFunction(org.apache.commons.math3.analysis.differentiation.MultivariateDifferentiableFunction)">GradientFunction(MultivariateDifferentiableFunction)</a></span> - Constructor for class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/GradientFunction.html" title="class in org.apache.commons.math3.analysis.differentiation">GradientFunction</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/scalar/GradientMultivariateOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar"><span class="strong">GradientMultivariateOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optim/nonlinear/scalar/package-summary.html">org.apache.commons.math3.optim.nonlinear.scalar</a></dt>
<dd>
<div class="block">Base class for implementing optimizers for multivariate scalar
 differentiable functions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/GradientMultivariateOptimizer.html#GradientMultivariateOptimizer(org.apache.commons.math3.optim.ConvergenceChecker)">GradientMultivariateOptimizer(ConvergenceChecker&lt;PointValuePair&gt;)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/GradientMultivariateOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar">GradientMultivariateOptimizer</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/ode/nonstiff/GraggBulirschStoerIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff"><span class="strong">GraggBulirschStoerIntegrator</span></a> - Class in <a href="./org/apache/commons/math3/ode/nonstiff/package-summary.html">org.apache.commons.math3.ode.nonstiff</a></dt>
<dd>
<div class="block">This class implements a Gragg-Bulirsch-Stoer integrator for
 Ordinary Differential Equations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/GraggBulirschStoerIntegrator.html#GraggBulirschStoerIntegrator(double, double, double, double)">GraggBulirschStoerIntegrator(double, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/GraggBulirschStoerIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">GraggBulirschStoerIntegrator</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/GraggBulirschStoerIntegrator.html#GraggBulirschStoerIntegrator(double, double, double[], double[])">GraggBulirschStoerIntegrator(double, double, double[], double[])</a></span> - Constructor for class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/GraggBulirschStoerIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">GraggBulirschStoerIntegrator</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#greaterThan(org.apache.commons.math3.dfp.Dfp)">greaterThan(Dfp)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Check if instance is greater than x.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/inference/GTest.html" title="class in org.apache.commons.math3.stat.inference"><span class="strong">GTest</span></a> - Class in <a href="./org/apache/commons/math3/stat/inference/package-summary.html">org.apache.commons.math3.stat.inference</a></dt>
<dd>
<div class="block">Implements <a href="http://en.wikipedia.org/wiki/G-test">G Test</a>
 statistics.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/GTest.html#GTest()">GTest()</a></span> - Constructor for class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/GTest.html" title="class in org.apache.commons.math3.stat.inference">GTest</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/GTest.html#gTest(double[], long[])">gTest(double[], long[])</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/GTest.html" title="class in org.apache.commons.math3.stat.inference">GTest</a></dt>
<dd>
<div class="block">Returns the <i>observed significance level</i>, or <a href=
 "http://www.cas.lancs.ac.uk/glossary_v1.1/hyptest.html#pvalue"> p-value</a>,
 associated with a G-Test for goodness of fit</a> comparing the
 <code>observed</code> frequency counts to those in the <code>expected</code> array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/GTest.html#gTest(double[], long[], double)">gTest(double[], long[], double)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/GTest.html" title="class in org.apache.commons.math3.stat.inference">GTest</a></dt>
<dd>
<div class="block">Performs a G-Test (Log-Likelihood Ratio Test) for goodness of fit
 evaluating the null hypothesis that the observed counts conform to the
 frequency distribution described by the expected counts, with
 significance level <code>alpha</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#gTest(double[], long[])">gTest(double[], long[])</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#gTest(double[], long[], double)">gTest(double[], long[], double)</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/GTest.html#gTestDataSetsComparison(long[], long[])">gTestDataSetsComparison(long[], long[])</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/GTest.html" title="class in org.apache.commons.math3.stat.inference">GTest</a></dt>
<dd>
<div class="block">Returns the <i>observed significance level</i>, or <a href=
 "http://www.cas.lancs.ac.uk/glossary_v1.1/hyptest.html#pvalue">
 p-value</a>, associated with a G-Value (Log-Likelihood Ratio) for two
 sample test comparing bin frequency counts in <code>observed1</code> and
 <code>observed2</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/GTest.html#gTestDataSetsComparison(long[], long[], double)">gTestDataSetsComparison(long[], long[], double)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/GTest.html" title="class in org.apache.commons.math3.stat.inference">GTest</a></dt>
<dd>
<div class="block">Performs a G-Test (Log-Likelihood Ratio Test) comparing two binned
 data sets.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#gTestDataSetsComparison(long[], long[])">gTestDataSetsComparison(long[], long[])</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#gTestDataSetsComparison(long[], long[], double)">gTestDataSetsComparison(long[], long[], double)</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/GTest.html#gTestIntrinsic(double[], long[])">gTestIntrinsic(double[], long[])</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/GTest.html" title="class in org.apache.commons.math3.stat.inference">GTest</a></dt>
<dd>
<div class="block">Returns the intrinsic (Hardy-Weinberg proportions) p-Value, as described
 in p64-69 of McDonald, J.H.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#gTestIntrinsic(double[], long[])">gTestIntrinsic(double[], long[])</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/GaussianCurveFitter.ParameterGuesser.html#guess()">guess()</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/GaussianCurveFitter.ParameterGuesser.html" title="class in org.apache.commons.math3.fitting">GaussianCurveFitter.ParameterGuesser</a></dt>
<dd>
<div class="block">Gets an estimation of the parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/GaussianFitter.ParameterGuesser.html#guess()">guess()</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/GaussianFitter.ParameterGuesser.html" title="class in org.apache.commons.math3.fitting">GaussianFitter.ParameterGuesser</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Gets an estimation of the parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/HarmonicCurveFitter.ParameterGuesser.html#guess()">guess()</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/HarmonicCurveFitter.ParameterGuesser.html" title="class in org.apache.commons.math3.fitting">HarmonicCurveFitter.ParameterGuesser</a></dt>
<dd>
<div class="block">Gets an estimation of the parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/HarmonicFitter.ParameterGuesser.html#guess()">guess()</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/HarmonicFitter.ParameterGuesser.html" title="class in org.apache.commons.math3.fitting">HarmonicFitter.ParameterGuesser</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Gets an estimation of the parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/fitting/GaussianFitter.ParameterGuesser.html#guess()">guess()</a></span> - Method in class org.apache.commons.math3.optimization.fitting.<a href="./org/apache/commons/math3/optimization/fitting/GaussianFitter.ParameterGuesser.html" title="class in org.apache.commons.math3.optimization.fitting">GaussianFitter.ParameterGuesser</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Gets an estimation of the parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/fitting/HarmonicFitter.ParameterGuesser.html#guess()">guess()</a></span> - Method in class org.apache.commons.math3.optimization.fitting.<a href="./org/apache/commons/math3/optimization/fitting/HarmonicFitter.ParameterGuesser.html" title="class in org.apache.commons.math3.optimization.fitting">HarmonicFitter.ParameterGuesser</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Gets an estimation of the parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#guessParametersErrors()">guessParametersErrors()</a></span> - Method in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of version 3.1, <a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#computeSigma(double[], double)"><code>AbstractLeastSquaresOptimizer.computeSigma(double[],double)</code></a> should be used
 instead. It should be emphasized that <code>guessParametersErrors</code> and
 <code>computeSigma</code> are <em>not</em> strictly equivalent.</i></div>
</div>
</dd>
</dl>
<a name="_H_">
<!--   -->
</a>
<h2 class="title">H</h2>
<dl>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#h">h</a></span> - Variable in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">current time step</div>
</dd>
<dt><a href="./org/apache/commons/math3/random/HaltonSequenceGenerator.html" title="class in org.apache.commons.math3.random"><span class="strong">HaltonSequenceGenerator</span></a> - Class in <a href="./org/apache/commons/math3/random/package-summary.html">org.apache.commons.math3.random</a></dt>
<dd>
<div class="block">Implementation of a Halton sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/HaltonSequenceGenerator.html#HaltonSequenceGenerator(int)">HaltonSequenceGenerator(int)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/HaltonSequenceGenerator.html" title="class in org.apache.commons.math3.random">HaltonSequenceGenerator</a></dt>
<dd>
<div class="block">Construct a new Halton sequence generator for the given space dimension.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/HaltonSequenceGenerator.html#HaltonSequenceGenerator(int, int[], int[])">HaltonSequenceGenerator(int, int[], int[])</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/HaltonSequenceGenerator.html" title="class in org.apache.commons.math3.random">HaltonSequenceGenerator</a></dt>
<dd>
<div class="block">Construct a new Halton sequence generator with the given base numbers and weights for each dimension.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ContinuousOutputModel.html#handleStep(org.apache.commons.math3.ode.sampling.StepInterpolator, boolean)">handleStep(StepInterpolator, boolean)</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ContinuousOutputModel.html" title="class in org.apache.commons.math3.ode">ContinuousOutputModel</a></dt>
<dd>
<div class="block">Handle the last accepted step.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/DummyStepHandler.html#handleStep(org.apache.commons.math3.ode.sampling.StepInterpolator, boolean)">handleStep(StepInterpolator, boolean)</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/DummyStepHandler.html" title="class in org.apache.commons.math3.ode.sampling">DummyStepHandler</a></dt>
<dd>
<div class="block">Handle the last accepted step.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/FixedStepHandler.html#handleStep(double, double[], double[], boolean)">handleStep(double, double[], double[], boolean)</a></span> - Method in interface org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/FixedStepHandler.html" title="interface in org.apache.commons.math3.ode.sampling">FixedStepHandler</a></dt>
<dd>
<div class="block">Handle the last accepted step</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/StepHandler.html#handleStep(org.apache.commons.math3.ode.sampling.StepInterpolator, boolean)">handleStep(StepInterpolator, boolean)</a></span> - Method in interface org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/StepHandler.html" title="interface in org.apache.commons.math3.ode.sampling">StepHandler</a></dt>
<dd>
<div class="block">Handle the last accepted step</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/StepNormalizer.html#handleStep(org.apache.commons.math3.ode.sampling.StepInterpolator, boolean)">handleStep(StepInterpolator, boolean)</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/StepNormalizer.html" title="class in org.apache.commons.math3.ode.sampling">StepNormalizer</a></dt>
<dd>
<div class="block">Handle the last accepted step</div>
</dd>
<dt><a href="./org/apache/commons/math3/fitting/HarmonicCurveFitter.html" title="class in org.apache.commons.math3.fitting"><span class="strong">HarmonicCurveFitter</span></a> - Class in <a href="./org/apache/commons/math3/fitting/package-summary.html">org.apache.commons.math3.fitting</a></dt>
<dd>
<div class="block">Fits points to a <a href="./org/apache/commons/math3/analysis/function/HarmonicOscillator.Parametric.html" title="class in org.apache.commons.math3.analysis.function"><code>harmonic oscillator</code></a>
 function.</div>
</dd>
<dt><a href="./org/apache/commons/math3/fitting/HarmonicCurveFitter.ParameterGuesser.html" title="class in org.apache.commons.math3.fitting"><span class="strong">HarmonicCurveFitter.ParameterGuesser</span></a> - Class in <a href="./org/apache/commons/math3/fitting/package-summary.html">org.apache.commons.math3.fitting</a></dt>
<dd>
<div class="block">This class guesses harmonic coefficients from a sample.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/HarmonicCurveFitter.ParameterGuesser.html#HarmonicCurveFitter.ParameterGuesser(java.util.Collection)">HarmonicCurveFitter.ParameterGuesser(Collection&lt;WeightedObservedPoint&gt;)</a></span> - Constructor for class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/HarmonicCurveFitter.ParameterGuesser.html" title="class in org.apache.commons.math3.fitting">HarmonicCurveFitter.ParameterGuesser</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/fitting/HarmonicFitter.html" title="class in org.apache.commons.math3.fitting"><span class="strong">HarmonicFitter</span></a> - Class in <a href="./org/apache/commons/math3/fitting/package-summary.html">org.apache.commons.math3.fitting</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.3. Please use <a href="./org/apache/commons/math3/fitting/HarmonicCurveFitter.html" title="class in org.apache.commons.math3.fitting"><code>HarmonicCurveFitter</code></a> and
 <a href="./org/apache/commons/math3/fitting/WeightedObservedPoints.html" title="class in org.apache.commons.math3.fitting"><code>WeightedObservedPoints</code></a> instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/HarmonicFitter.html#HarmonicFitter(org.apache.commons.math3.optim.nonlinear.vector.MultivariateVectorOptimizer)">HarmonicFitter(MultivariateVectorOptimizer)</a></span> - Constructor for class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/HarmonicFitter.html" title="class in org.apache.commons.math3.fitting">HarmonicFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/fitting/HarmonicFitter.html" title="class in org.apache.commons.math3.optimization.fitting"><span class="strong">HarmonicFitter</span></a> - Class in <a href="./org/apache/commons/math3/optimization/fitting/package-summary.html">org.apache.commons.math3.optimization.fitting</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/fitting/HarmonicFitter.html#HarmonicFitter(org.apache.commons.math3.optimization.DifferentiableMultivariateVectorOptimizer)">HarmonicFitter(DifferentiableMultivariateVectorOptimizer)</a></span> - Constructor for class org.apache.commons.math3.optimization.fitting.<a href="./org/apache/commons/math3/optimization/fitting/HarmonicFitter.html" title="class in org.apache.commons.math3.optimization.fitting">HarmonicFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/fitting/HarmonicFitter.ParameterGuesser.html" title="class in org.apache.commons.math3.fitting"><span class="strong">HarmonicFitter.ParameterGuesser</span></a> - Class in <a href="./org/apache/commons/math3/fitting/package-summary.html">org.apache.commons.math3.fitting</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">This class guesses harmonic coefficients from a sample.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/HarmonicFitter.ParameterGuesser.html#HarmonicFitter.ParameterGuesser(org.apache.commons.math3.fitting.WeightedObservedPoint[])">HarmonicFitter.ParameterGuesser(WeightedObservedPoint[])</a></span> - Constructor for class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/HarmonicFitter.ParameterGuesser.html" title="class in org.apache.commons.math3.fitting">HarmonicFitter.ParameterGuesser</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/fitting/HarmonicFitter.ParameterGuesser.html" title="class in org.apache.commons.math3.optimization.fitting"><span class="strong">HarmonicFitter.ParameterGuesser</span></a> - Class in <a href="./org/apache/commons/math3/optimization/fitting/package-summary.html">org.apache.commons.math3.optimization.fitting</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">This class guesses harmonic coefficients from a sample.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/fitting/HarmonicFitter.ParameterGuesser.html#HarmonicFitter.ParameterGuesser(org.apache.commons.math3.optimization.fitting.WeightedObservedPoint[])">HarmonicFitter.ParameterGuesser(WeightedObservedPoint[])</a></span> - Constructor for class org.apache.commons.math3.optimization.fitting.<a href="./org/apache/commons/math3/optimization/fitting/HarmonicFitter.ParameterGuesser.html" title="class in org.apache.commons.math3.optimization.fitting">HarmonicFitter.ParameterGuesser</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/HarmonicOscillator.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">HarmonicOscillator</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block"><a href="http://en.wikipedia.org/wiki/Harmonic_oscillator">
  simple harmonic oscillator</a> function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/HarmonicOscillator.html#HarmonicOscillator(double, double, double)">HarmonicOscillator(double, double, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/HarmonicOscillator.html" title="class in org.apache.commons.math3.analysis.function">HarmonicOscillator</a></dt>
<dd>
<div class="block">Harmonic oscillator function.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/HarmonicOscillator.Parametric.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">HarmonicOscillator.Parametric</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Parametric function where the input array contains the parameters of
 the harmonic oscillator function, ordered as follows:
 
  Amplitude
  Angular frequency
  Phase
 </div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/HarmonicOscillator.Parametric.html#HarmonicOscillator.Parametric()">HarmonicOscillator.Parametric()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/HarmonicOscillator.Parametric.html" title="class in org.apache.commons.math3.analysis.function">HarmonicOscillator.Parametric</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/EigenDecomposition.html#hasComplexEigenvalues()">hasComplexEigenvalues()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/EigenDecomposition.html" title="class in org.apache.commons.math3.linear">EigenDecomposition</a></dt>
<dd>
<div class="block">Returns whether the calculated eigen values are complex or real.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathUtils.html#hash(double)">hash(double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathUtils.html" title="class in org.apache.commons.math3.util">MathUtils</a></dt>
<dd>
<div class="block">Returns an integer hash code representing the given double value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathUtils.html#hash(double[])">hash(double[])</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathUtils.html" title="class in org.apache.commons.math3.util">MathUtils</a></dt>
<dd>
<div class="block">Returns an integer hash code representing the given double array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Get a hashCode for the derivative structure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Get a hashCode for the derivative structure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunction</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Get a hashCode for the complex number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Quaternion.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex">Quaternion</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Gets a hashCode for the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Gets a hashCode for the fraction.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">Gets a hashCode for the fraction.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Get a hashCode for the 1D vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Get a hashCode for the 3D vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Get a hashCode for the 3D vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Get a hashCode for the 2D vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/utilities/OrderedTuple.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.utilities.<a href="./org/apache/commons/math3/geometry/partitioning/utilities/OrderedTuple.html" title="class in org.apache.commons.math3.geometry.partitioning.utilities">OrderedTuple</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/S1Point.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/S1Point.html" title="class in org.apache.commons.math3.geometry.spherical.oned">S1Point</a></dt>
<dd>
<div class="block">Get a hashCode for the 2D vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html" title="class in org.apache.commons.math3.geometry.spherical.twod">S2Point</a></dt>
<dd>
<div class="block">Get a hashCode for the 2D vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Computes a hashcode for the matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Computes a hashcode for the matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Get a hashCode for the real vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/DoublePoint.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/DoublePoint.html" title="class in org.apache.commons.math3.ml.clustering">DoublePoint</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/LinearConstraint.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/LinearConstraint.html" title="class in org.apache.commons.math3.optim.linear">LinearConstraint</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/LinearObjectiveFunction.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/LinearObjectiveFunction.html" title="class in org.apache.commons.math3.optim.linear">LinearObjectiveFunction</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/LinearConstraint.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/LinearConstraint.html" title="class in org.apache.commons.math3.optimization.linear">LinearConstraint</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/LinearObjectiveFunction.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/LinearObjectiveFunction.html" title="class in org.apache.commons.math3.optimization.linear">LinearObjectiveFunction</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/clustering/EuclideanDoublePoint.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.stat.clustering.<a href="./org/apache/commons/math3/stat/clustering/EuclideanDoublePoint.html" title="class in org.apache.commons.math3.stat.clustering">EuclideanDoublePoint</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/clustering/EuclideanIntegerPoint.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.stat.clustering.<a href="./org/apache/commons/math3/stat/clustering/EuclideanIntegerPoint.html" title="class in org.apache.commons.math3.stat.clustering">EuclideanIntegerPoint</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AbstractStorelessUnivariateStatistic.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AbstractStorelessUnivariateStatistic.html" title="class in org.apache.commons.math3.stat.descriptive">AbstractStorelessUnivariateStatistic</a></dt>
<dd>
<div class="block">Returns hash code based on getResult() and getN()</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/VectorialCovariance.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/VectorialCovariance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">VectorialCovariance</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/VectorialMean.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/VectorialMean.html" title="class in org.apache.commons.math3.stat.descriptive.moment">VectorialMean</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">MultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns hash code based on values of statistics</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummaryValues.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummaryValues.html" title="class in org.apache.commons.math3.stat.descriptive">StatisticalSummaryValues</a></dt>
<dd>
<div class="block">Returns hash code based on values of statistics</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">Returns hash code based on values of statistics</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedMultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Returns hash code based on values of statistics</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">Returns hash code based on values of statistics</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">

 The current implementation returns the same value as
 <code>new Double(this.doubleValue()).hashCode()</code></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/DefaultTransformer.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/DefaultTransformer.html" title="class in org.apache.commons.math3.util">DefaultTransformer</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Pair.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Pair.html" title="class in org.apache.commons.math3.util">Pair</a></dt>
<dd>
<div class="block">Compute a hash code.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block">Returns a hash code consistent with equals.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/TransformerMap.html#hashCode()">hashCode()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/TransformerMap.html" title="class in org.apache.commons.math3.util">TransformerMap</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/MillerUpdatingRegression.html#hasIntercept()">hasIntercept()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/MillerUpdatingRegression.html" title="class in org.apache.commons.math3.stat.regression">MillerUpdatingRegression</a></dt>
<dd>
<div class="block">A getter method which determines whether a constant is included.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/RegressionResults.html#hasIntercept()">hasIntercept()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/RegressionResults.html" title="class in org.apache.commons.math3.stat.regression">RegressionResults</a></dt>
<dd>
<div class="block">Returns true if the regression model has been computed including an intercept.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html#hasIntercept()">hasIntercept()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html" title="class in org.apache.commons.math3.stat.regression">SimpleRegression</a></dt>
<dd>
<div class="block">Returns true if the model includes an intercept term.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/UpdatingMultipleLinearRegression.html#hasIntercept()">hasIntercept()</a></span> - Method in interface org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/UpdatingMultipleLinearRegression.html" title="interface in org.apache.commons.math3.stat.regression">UpdatingMultipleLinearRegression</a></dt>
<dd>
<div class="block">Returns true if a constant has been included false otherwise.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.OpenMapSparseIterator.html#hasNext()">hasNext()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.OpenMapSparseIterator.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector.OpenMapSparseIterator</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.SparseEntryIterator.html#hasNext()">hasNext()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.SparseEntryIterator.html" title="class in org.apache.commons.math3.linear">RealVector.SparseEntryIterator</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MultidimensionalCounter.Iterator.html#hasNext()">hasNext()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MultidimensionalCounter.Iterator.html" title="class in org.apache.commons.math3.util">MultidimensionalCounter.Iterator</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.Iterator.html#hasNext()">hasNext()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.Iterator.html" title="class in org.apache.commons.math3.util">OpenIntToDoubleHashMap.Iterator</a></dt>
<dd>
<div class="block">Check if there is a next element in the map.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.Iterator.html#hasNext()">hasNext()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.Iterator.html" title="class in org.apache.commons.math3.util">OpenIntToFieldHashMap.Iterator</a></dt>
<dd>
<div class="block">Check if there is a next element in the map.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/gauss/GaussIntegratorFactory.html#hermite(int)">hermite(int)</a></span> - Method in class org.apache.commons.math3.analysis.integration.gauss.<a href="./org/apache/commons/math3/analysis/integration/gauss/GaussIntegratorFactory.html" title="class in org.apache.commons.math3.analysis.integration.gauss">GaussIntegratorFactory</a></dt>
<dd>
<div class="block">Creates a Gauss-Hermite integrator of the given order.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/interpolation/HermiteInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation"><span class="strong">HermiteInterpolator</span></a> - Class in <a href="./org/apache/commons/math3/analysis/interpolation/package-summary.html">org.apache.commons.math3.analysis.interpolation</a></dt>
<dd>
<div class="block">Polynomial interpolator using both sample values and sample derivatives.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/HermiteInterpolator.html#HermiteInterpolator()">HermiteInterpolator()</a></span> - Constructor for class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/HermiteInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">HermiteInterpolator</a></dt>
<dd>
<div class="block">Create an empty interpolator.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/integration/gauss/HermiteRuleFactory.html" title="class in org.apache.commons.math3.analysis.integration.gauss"><span class="strong">HermiteRuleFactory</span></a> - Class in <a href="./org/apache/commons/math3/analysis/integration/gauss/package-summary.html">org.apache.commons.math3.analysis.integration.gauss</a></dt>
<dd>
<div class="block">Factory that creates a
 <a href="http://en.wikipedia.org/wiki/Gauss-Hermite_quadrature">
  Gauss-type quadrature rule using Hermite polynomials</a>
 of the first kind.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/gauss/HermiteRuleFactory.html#HermiteRuleFactory()">HermiteRuleFactory()</a></span> - Constructor for class org.apache.commons.math3.analysis.integration.gauss.<a href="./org/apache/commons/math3/analysis/integration/gauss/HermiteRuleFactory.html" title="class in org.apache.commons.math3.analysis.integration.gauss">HermiteRuleFactory</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/ode/nonstiff/HighamHall54Integrator.html" title="class in org.apache.commons.math3.ode.nonstiff"><span class="strong">HighamHall54Integrator</span></a> - Class in <a href="./org/apache/commons/math3/ode/nonstiff/package-summary.html">org.apache.commons.math3.ode.nonstiff</a></dt>
<dd>
<div class="block">This class implements the 5(4) Higham and Hall integrator for
 Ordinary Differential Equations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/HighamHall54Integrator.html#HighamHall54Integrator(double, double, double, double)">HighamHall54Integrator(double, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/HighamHall54Integrator.html" title="class in org.apache.commons.math3.ode.nonstiff">HighamHall54Integrator</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/HighamHall54Integrator.html#HighamHall54Integrator(double, double, double[], double[])">HighamHall54Integrator(double, double, double[], double[])</a></span> - Constructor for class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/HighamHall54Integrator.html" title="class in org.apache.commons.math3.ode.nonstiff">HighamHall54Integrator</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#homoscedasticT(double[], double[])">homoscedasticT(double[], double[])</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#homoscedasticT(org.apache.commons.math3.stat.descriptive.StatisticalSummary, org.apache.commons.math3.stat.descriptive.StatisticalSummary)">homoscedasticT(StatisticalSummary, StatisticalSummary)</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TTest.html#homoscedasticT(double[], double[])">homoscedasticT(double[], double[])</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TTest.html" title="class in org.apache.commons.math3.stat.inference">TTest</a></dt>
<dd>
<div class="block">Computes a 2-sample t statistic,  under the hypothesis of equal
 subpopulation variances.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TTest.html#homoscedasticT(org.apache.commons.math3.stat.descriptive.StatisticalSummary, org.apache.commons.math3.stat.descriptive.StatisticalSummary)">homoscedasticT(StatisticalSummary, StatisticalSummary)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TTest.html" title="class in org.apache.commons.math3.stat.inference">TTest</a></dt>
<dd>
<div class="block">Computes a 2-sample t statistic, comparing the means of the datasets
 described by two <a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummary.html" title="interface in org.apache.commons.math3.stat.descriptive"><code>StatisticalSummary</code></a> instances, under the
 assumption of equal subpopulation variances.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TTest.html#homoscedasticT(double, double, double, double, double, double)">homoscedasticT(double, double, double, double, double, double)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TTest.html" title="class in org.apache.commons.math3.stat.inference">TTest</a></dt>
<dd>
<div class="block">Computes t test statistic for 2-sample t-test under the hypothesis
 of equal subpopulation variances.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#homoscedasticTTest(double[], double[], double)">homoscedasticTTest(double[], double[], double)</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#homoscedasticTTest(double[], double[])">homoscedasticTTest(double[], double[])</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#homoscedasticTTest(org.apache.commons.math3.stat.descriptive.StatisticalSummary, org.apache.commons.math3.stat.descriptive.StatisticalSummary)">homoscedasticTTest(StatisticalSummary, StatisticalSummary)</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TTest.html#homoscedasticTTest(double[], double[])">homoscedasticTTest(double[], double[])</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TTest.html" title="class in org.apache.commons.math3.stat.inference">TTest</a></dt>
<dd>
<div class="block">Returns the <i>observed significance level</i>, or
 <i>p-value</i>, associated with a two-sample, two-tailed t-test
 comparing the means of the input arrays, under the assumption that
 the two samples are drawn from subpopulations with equal variances.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TTest.html#homoscedasticTTest(double[], double[], double)">homoscedasticTTest(double[], double[], double)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TTest.html" title="class in org.apache.commons.math3.stat.inference">TTest</a></dt>
<dd>
<div class="block">Performs a
 <a href="http://www.itl.nist.gov/div898/handbook/eda/section3/eda353.htm">
 two-sided t-test</a> evaluating the null hypothesis that <code>sample1</code>
 and <code>sample2</code> are drawn from populations with the same mean,
 with significance level <code>alpha</code>,  assuming that the
 subpopulation variances are equal.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TTest.html#homoscedasticTTest(org.apache.commons.math3.stat.descriptive.StatisticalSummary, org.apache.commons.math3.stat.descriptive.StatisticalSummary)">homoscedasticTTest(StatisticalSummary, StatisticalSummary)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TTest.html" title="class in org.apache.commons.math3.stat.inference">TTest</a></dt>
<dd>
<div class="block">Returns the <i>observed significance level</i>, or
 <i>p-value</i>, associated with a two-sample, two-tailed t-test
 comparing the means of the datasets described by two StatisticalSummary
 instances, under the hypothesis of equal subpopulation variances.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TTest.html#homoscedasticTTest(double, double, double, double, double, double)">homoscedasticTTest(double, double, double, double, double, double)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TTest.html" title="class in org.apache.commons.math3.stat.inference">TTest</a></dt>
<dd>
<div class="block">Computes p-value for 2-sided, 2-sample t-test, under the assumption
 of equal subpopulation variances.</div>
</dd>
<dt><a href="./org/apache/commons/math3/distribution/HypergeometricDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">HypergeometricDistribution</span></a> - Class in <a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a></dt>
<dd>
<div class="block">Implementation of the hypergeometric distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/HypergeometricDistribution.html#HypergeometricDistribution(int, int, int)">HypergeometricDistribution(int, int, int)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/HypergeometricDistribution.html" title="class in org.apache.commons.math3.distribution">HypergeometricDistribution</a></dt>
<dd>
<div class="block">Construct a new hypergeometric distribution with the specified population
 size, number of successes in the population, and sample size.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/HypergeometricDistribution.html#HypergeometricDistribution(org.apache.commons.math3.random.RandomGenerator, int, int, int)">HypergeometricDistribution(RandomGenerator, int, int, int)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/HypergeometricDistribution.html" title="class in org.apache.commons.math3.distribution">HypergeometricDistribution</a></dt>
<dd>
<div class="block">Creates a new hypergeometric distribution.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/partitioning/Hyperplane.html" title="interface in org.apache.commons.math3.geometry.partitioning"><span class="strong">Hyperplane</span></a>&lt;<a href="./org/apache/commons/math3/geometry/partitioning/Hyperplane.html" title="type parameter in Hyperplane">S</a> extends <a href="./org/apache/commons/math3/geometry/Space.html" title="interface in org.apache.commons.math3.geometry">Space</a>&gt; - Interface in <a href="./org/apache/commons/math3/geometry/partitioning/package-summary.html">org.apache.commons.math3.geometry.partitioning</a></dt>
<dd>
<div class="block">This interface represents an hyperplane of a space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#hypot(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">hypot(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Returns the hypotenuse of a triangle with sides <code>this</code> and <code>y</code>
 - sqrt(<i>this</i><sup>2</sup>&nbsp;+<i>y</i><sup>2</sup>)<br/>
 avoiding intermediate overflow or underflow.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#hypot(org.apache.commons.math3.analysis.differentiation.DerivativeStructure, org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">hypot(DerivativeStructure, DerivativeStructure)</a></span> - Static method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Returns the hypotenuse of a triangle with sides <code>x</code> and <code>y</code>
 - sqrt(<i>x</i><sup>2</sup>&nbsp;+<i>y</i><sup>2</sup>)<br/>
 avoiding intermediate overflow or underflow.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#hypot(org.apache.commons.math3.analysis.differentiation.SparseGradient)">hypot(SparseGradient)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Returns the hypotenuse of a triangle with sides <code>this</code> and <code>y</code>
 - sqrt(<i>this</i><sup>2</sup>&nbsp;+<i>y</i><sup>2</sup>)<br/>
 avoiding intermediate overflow or underflow.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#hypot(org.apache.commons.math3.analysis.differentiation.SparseGradient, org.apache.commons.math3.analysis.differentiation.SparseGradient)">hypot(SparseGradient, SparseGradient)</a></span> - Static method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Returns the hypotenuse of a triangle with sides <code>x</code> and <code>y</code>
 - sqrt(<i>x</i><sup>2</sup>&nbsp;+<i>y</i><sup>2</sup>)<br/>
 avoiding intermediate overflow or underflow.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#hypot(org.apache.commons.math3.dfp.Dfp)">hypot(Dfp)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Returns the hypotenuse of a triangle with sides <code>this</code> and <code>y</code>
 - sqrt(<i>this</i><sup>2</sup>&nbsp;+<i>y</i><sup>2</sup>)<br/>
 avoiding intermediate overflow or underflow.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#hypot(T)">hypot(T)</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Returns the hypotenuse of a triangle with sides <code>this</code> and <code>y</code>
 - sqrt(<i>this</i><sup>2</sup>&nbsp;+<i>y</i><sup>2</sup>)<br/>
 avoiding intermediate overflow or underflow.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#hypot(org.apache.commons.math3.util.Decimal64)">hypot(Decimal64)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Returns the hypotenuse of a triangle with sides <code>this</code> and <code>y</code>
 - sqrt(<i>this</i><sup>2</sup>&nbsp;+<i>y</i><sup>2</sup>)<br/>
 avoiding intermediate overflow or underflow.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#hypot(double, double)">hypot(double, double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Returns the hypotenuse of a triangle with sides <code>x</code> and <code>y</code>
 - sqrt(<i>x</i><sup>2</sup>&nbsp;+<i>y</i><sup>2</sup>)<br/>
 avoiding intermediate overflow or underflow.</div>
</dd>
</dl>
<a name="_I_">
<!--   -->
</a>
<h2 class="title">I</h2>
<dl>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#I">I</a></span> - Static variable in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">The square root of -1.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Quaternion.html#I">I</a></span> - Static variable in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex">Quaternion</a></dt>
<dd>
<div class="block">i</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/AbstractWell.html#i1">i1</a></span> - Variable in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/AbstractWell.html" title="class in org.apache.commons.math3.random">AbstractWell</a></dt>
<dd>
<div class="block">Index indirection table giving for each index the value index + m1 taking table size into account.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/AbstractWell.html#i2">i2</a></span> - Variable in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/AbstractWell.html" title="class in org.apache.commons.math3.random">AbstractWell</a></dt>
<dd>
<div class="block">Index indirection table giving for each index the value index + m2 taking table size into account.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/AbstractWell.html#i3">i3</a></span> - Variable in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/AbstractWell.html" title="class in org.apache.commons.math3.random">AbstractWell</a></dt>
<dd>
<div class="block">Index indirection table giving for each index the value index + m3 taking table size into account.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Identity.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Identity</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Identity function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Identity.html#Identity()">Identity()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Identity.html" title="class in org.apache.commons.math3.analysis.function">Identity</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Quaternion.html#IDENTITY">IDENTITY</a></span> - Static variable in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex">Quaternion</a></dt>
<dd>
<div class="block">Identity quaternion.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html#IDENTITY">IDENTITY</a></span> - Static variable in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Rotation</a></dt>
<dd>
<div class="block">Identity rotation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/RandomKey.html#identityPermutation(int)">identityPermutation(int)</a></span> - Static method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/RandomKey.html" title="class in org.apache.commons.math3.genetics">RandomKey</a></dt>
<dd>
<div class="block">Generates a representation corresponding to an identity permutation of
 length l which can be passed to the RandomKey constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#IEEEremainder(double, double)">IEEEremainder(double, double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Computes the remainder as prescribed by the IEEE 754 standard.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/IllConditionedOperatorException.html" title="class in org.apache.commons.math3.linear"><span class="strong">IllConditionedOperatorException</span></a> - Exception in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">An exception to be thrown when the condition number of a
 <a href="./org/apache/commons/math3/linear/RealLinearOperator.html" title="class in org.apache.commons.math3.linear"><code>RealLinearOperator</code></a> is too high.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/IllConditionedOperatorException.html#IllConditionedOperatorException(double)">IllConditionedOperatorException(double)</a></span> - Constructor for exception org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/IllConditionedOperatorException.html" title="class in org.apache.commons.math3.linear">IllConditionedOperatorException</a></dt>
<dd>
<div class="block">Creates a new instance of this class.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/solvers/IllinoisSolver.html" title="class in org.apache.commons.math3.analysis.solvers"><span class="strong">IllinoisSolver</span></a> - Class in <a href="./org/apache/commons/math3/analysis/solvers/package-summary.html">org.apache.commons.math3.analysis.solvers</a></dt>
<dd>
<div class="block">Implements the <em>Illinois</em> method for root-finding (approximating
 a zero of a univariate real function).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/IllinoisSolver.html#IllinoisSolver()">IllinoisSolver()</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/IllinoisSolver.html" title="class in org.apache.commons.math3.analysis.solvers">IllinoisSolver</a></dt>
<dd>
<div class="block">Construct a solver with default accuracy (1e-6).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/IllinoisSolver.html#IllinoisSolver(double)">IllinoisSolver(double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/IllinoisSolver.html" title="class in org.apache.commons.math3.analysis.solvers">IllinoisSolver</a></dt>
<dd>
<div class="block">Construct a solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/IllinoisSolver.html#IllinoisSolver(double, double)">IllinoisSolver(double, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/IllinoisSolver.html" title="class in org.apache.commons.math3.analysis.solvers">IllinoisSolver</a></dt>
<dd>
<div class="block">Construct a solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/IllinoisSolver.html#IllinoisSolver(double, double, double)">IllinoisSolver(double, double, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/IllinoisSolver.html" title="class in org.apache.commons.math3.analysis.solvers">IllinoisSolver</a></dt>
<dd>
<div class="block">Construct a solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Kurtosis.html#incMoment">incMoment</a></span> - Variable in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Kurtosis.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Kurtosis</a></dt>
<dd>
<div class="block">Determines whether or not this statistic can be incremented or cleared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Mean.html#incMoment">incMoment</a></span> - Variable in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Mean.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Mean</a></dt>
<dd>
<div class="block">Determines whether or not this statistic can be incremented or cleared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Skewness.html#incMoment">incMoment</a></span> - Variable in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Skewness.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Skewness</a></dt>
<dd>
<div class="block">Determines whether or not this statistic can be incremented or cleared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html#incMoment">incMoment</a></span> - Variable in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Variance</a></dt>
<dd>
<div class="block">Whether or not <a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html#increment(double)"><code>Variance.increment(double)</code></a> should increment
 the internal second moment.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/StorelessCovariance.html#increment(double[])">increment(double[])</a></span> - Method in class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/StorelessCovariance.html" title="class in org.apache.commons.math3.stat.correlation">StorelessCovariance</a></dt>
<dd>
<div class="block">Increment the covariance matrix with one row of data.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AbstractStorelessUnivariateStatistic.html#increment(double)">increment(double)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AbstractStorelessUnivariateStatistic.html" title="class in org.apache.commons.math3.stat.descriptive">AbstractStorelessUnivariateStatistic</a></dt>
<dd>
<div class="block">Updates the internal state of the statistic to reflect the addition of the new value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/GeometricMean.html#increment(double)">increment(double)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/GeometricMean.html" title="class in org.apache.commons.math3.stat.descriptive.moment">GeometricMean</a></dt>
<dd>
<div class="block">Updates the internal state of the statistic to reflect the addition of the new value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Kurtosis.html#increment(double)">increment(double)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Kurtosis.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Kurtosis</a></dt>
<dd>
<div class="block">Updates the internal state of the statistic to reflect the addition of the new value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Mean.html#increment(double)">increment(double)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Mean.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Mean</a></dt>
<dd>
<div class="block">Updates the internal state of the statistic to reflect the addition of the new value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/SecondMoment.html#increment(double)">increment(double)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/SecondMoment.html" title="class in org.apache.commons.math3.stat.descriptive.moment">SecondMoment</a></dt>
<dd>
<div class="block">Updates the internal state of the statistic to reflect the addition of the new value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Skewness.html#increment(double)">increment(double)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Skewness.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Skewness</a></dt>
<dd>
<div class="block">Updates the internal state of the statistic to reflect the addition of the new value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html#increment(double)">increment(double)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html" title="class in org.apache.commons.math3.stat.descriptive.moment">StandardDeviation</a></dt>
<dd>
<div class="block">Updates the internal state of the statistic to reflect the addition of the new value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html#increment(double)">increment(double)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Variance</a></dt>
<dd>
<div class="block">Updates the internal state of the statistic to reflect the addition of the new value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/VectorialCovariance.html#increment(double[])">increment(double[])</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/VectorialCovariance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">VectorialCovariance</a></dt>
<dd>
<div class="block">Add a new vector to the sample.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/VectorialMean.html#increment(double[])">increment(double[])</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/VectorialMean.html" title="class in org.apache.commons.math3.stat.descriptive.moment">VectorialMean</a></dt>
<dd>
<div class="block">Add a new vector to the sample.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/rank/Max.html#increment(double)">increment(double)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.rank.<a href="./org/apache/commons/math3/stat/descriptive/rank/Max.html" title="class in org.apache.commons.math3.stat.descriptive.rank">Max</a></dt>
<dd>
<div class="block">Updates the internal state of the statistic to reflect the addition of the new value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/rank/Min.html#increment(double)">increment(double)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.rank.<a href="./org/apache/commons/math3/stat/descriptive/rank/Min.html" title="class in org.apache.commons.math3.stat.descriptive.rank">Min</a></dt>
<dd>
<div class="block">Updates the internal state of the statistic to reflect the addition of the new value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StorelessUnivariateStatistic.html#increment(double)">increment(double)</a></span> - Method in interface org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StorelessUnivariateStatistic.html" title="interface in org.apache.commons.math3.stat.descriptive">StorelessUnivariateStatistic</a></dt>
<dd>
<div class="block">Updates the internal state of the statistic to reflect the addition of the new value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/Product.html#increment(double)">increment(double)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/Product.html" title="class in org.apache.commons.math3.stat.descriptive.summary">Product</a></dt>
<dd>
<div class="block">Updates the internal state of the statistic to reflect the addition of the new value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/Sum.html#increment(double)">increment(double)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/Sum.html" title="class in org.apache.commons.math3.stat.descriptive.summary">Sum</a></dt>
<dd>
<div class="block">Updates the internal state of the statistic to reflect the addition of the new value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfLogs.html#increment(double)">increment(double)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfLogs.html" title="class in org.apache.commons.math3.stat.descriptive.summary">SumOfLogs</a></dt>
<dd>
<div class="block">Updates the internal state of the statistic to reflect the addition of the new value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfSquares.html#increment(double)">increment(double)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfSquares.html" title="class in org.apache.commons.math3.stat.descriptive.summary">SumOfSquares</a></dt>
<dd>
<div class="block">Updates the internal state of the statistic to reflect the addition of the new value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AbstractStorelessUnivariateStatistic.html#incrementAll(double[])">incrementAll(double[])</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AbstractStorelessUnivariateStatistic.html" title="class in org.apache.commons.math3.stat.descriptive">AbstractStorelessUnivariateStatistic</a></dt>
<dd>
<div class="block">This default implementation just calls <a href="./org/apache/commons/math3/stat/descriptive/AbstractStorelessUnivariateStatistic.html#increment(double)"><code>AbstractStorelessUnivariateStatistic.increment(double)</code></a> in a loop over
 the input array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AbstractStorelessUnivariateStatistic.html#incrementAll(double[], int, int)">incrementAll(double[], int, int)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AbstractStorelessUnivariateStatistic.html" title="class in org.apache.commons.math3.stat.descriptive">AbstractStorelessUnivariateStatistic</a></dt>
<dd>
<div class="block">This default implementation just calls <a href="./org/apache/commons/math3/stat/descriptive/AbstractStorelessUnivariateStatistic.html#increment(double)"><code>AbstractStorelessUnivariateStatistic.increment(double)</code></a> in a loop over
 the specified portion of the input array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StorelessUnivariateStatistic.html#incrementAll(double[])">incrementAll(double[])</a></span> - Method in interface org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StorelessUnivariateStatistic.html" title="interface in org.apache.commons.math3.stat.descriptive">StorelessUnivariateStatistic</a></dt>
<dd>
<div class="block">Updates the internal state of the statistic to reflect addition of
 all values in the values array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StorelessUnivariateStatistic.html#incrementAll(double[], int, int)">incrementAll(double[], int, int)</a></span> - Method in interface org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StorelessUnivariateStatistic.html" title="interface in org.apache.commons.math3.stat.descriptive">StorelessUnivariateStatistic</a></dt>
<dd>
<div class="block">Updates the internal state of the statistic to reflect addition of
 the values in the designated portion of the values array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Incrementor.html#incrementCount(int)">incrementCount(int)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Incrementor.html" title="class in org.apache.commons.math3.util">Incrementor</a></dt>
<dd>
<div class="block">Performs multiple increments.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Incrementor.html#incrementCount()">incrementCount()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Incrementor.html" title="class in org.apache.commons.math3.util">Incrementor</a></dt>
<dd>
<div class="block">Adds one to the current iteration count.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html#incrementEvaluationCount()">incrementEvaluationCount()</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BaseAbstractUnivariateSolver</a></dt>
<dd>
<div class="block">Increment the evaluation count by one.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/BaseOptimizer.html#incrementEvaluationCount()">incrementEvaluationCount()</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/BaseOptimizer.html" title="class in org.apache.commons.math3.optim">BaseOptimizer</a></dt>
<dd>
<div class="block">Increment the evaluation count.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/BaseOptimizer.html#incrementIterationCount()">incrementIterationCount()</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/BaseOptimizer.html" title="class in org.apache.commons.math3.optim">BaseOptimizer</a></dt>
<dd>
<div class="block">Increment the iteration count.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/IterationManager.html#incrementIterationCount()">incrementIterationCount()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/IterationManager.html" title="class in org.apache.commons.math3.util">IterationManager</a></dt>
<dd>
<div class="block">Increments the iteration count by one, and throws an exception if the
 maximum number of iterations is reached.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/AbstractLinearOptimizer.html#incrementIterationsCounter()">incrementIterationsCounter()</a></span> - Method in class org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/AbstractLinearOptimizer.html" title="class in org.apache.commons.math3.optimization.linear">AbstractLinearOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Increment the iterations counter by 1.</div>
</dd>
<dt><a href="./org/apache/commons/math3/util/Incrementor.html" title="class in org.apache.commons.math3.util"><span class="strong">Incrementor</span></a> - Class in <a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a></dt>
<dd>
<div class="block">Utility that increments a counter until a maximum is reached, at
 which point, the instance will by default throw a
 <a href="./org/apache/commons/math3/exception/MaxCountExceededException.html" title="class in org.apache.commons.math3.exception"><code>MaxCountExceededException</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Incrementor.html#Incrementor()">Incrementor()</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Incrementor.html" title="class in org.apache.commons.math3.util">Incrementor</a></dt>
<dd>
<div class="block">Default constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Incrementor.html#Incrementor(int)">Incrementor(int)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Incrementor.html" title="class in org.apache.commons.math3.util">Incrementor</a></dt>
<dd>
<div class="block">Defines a maximal count.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Incrementor.html#Incrementor(int, org.apache.commons.math3.util.Incrementor.MaxCountExceededCallback)">Incrementor(int, Incrementor.MaxCountExceededCallback)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Incrementor.html" title="class in org.apache.commons.math3.util">Incrementor</a></dt>
<dd>
<div class="block">Defines a maximal count and a callback method to be triggered at
 counter exhaustion.</div>
</dd>
<dt><a href="./org/apache/commons/math3/util/Incrementor.MaxCountExceededCallback.html" title="interface in org.apache.commons.math3.util"><span class="strong">Incrementor.MaxCountExceededCallback</span></a> - Interface in <a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a></dt>
<dd>
<div class="block">Defines a method to be called at counter exhaustion.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#incrementValue(java.lang.Comparable, long)">incrementValue(Comparable&lt;?&gt;, long)</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Increments the frequency count for v.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#incrementValue(int, long)">incrementValue(int, long)</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Increments the frequency count for v.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#incrementValue(long, long)">incrementValue(long, long)</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Increments the frequency count for v.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#incrementValue(char, long)">incrementValue(char, long)</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Increments the frequency count for v.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/AbstractWell.html#index">index</a></span> - Variable in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/AbstractWell.html" title="class in org.apache.commons.math3.random">AbstractWell</a></dt>
<dd>
<div class="block">Current index in the bytes pool.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/RandomKey.html#inducedPermutation(java.util.List, java.util.List)">inducedPermutation(List&lt;S&gt;, List&lt;S&gt;)</a></span> - Static method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/RandomKey.html" title="class in org.apache.commons.math3.genetics">RandomKey</a></dt>
<dd>
<div class="block">Generates a representation of a permutation corresponding to a
 permutation which yields <code>permutedData</code> when applied to
 <code>originalData</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#INF">INF</a></span> - Static variable in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">A complex number representing "+INF + INFi"</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#INFINITE">INFINITE</a></span> - Static variable in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Indicator value for Infinity.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#INFINITE_WINDOW">INFINITE_WINDOW</a></span> - Static variable in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Represents an infinite window size.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ContinuousOutputModel.html#init(double, double[], double)">init(double, double[], double)</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ContinuousOutputModel.html" title="class in org.apache.commons.math3.ode">ContinuousOutputModel</a></dt>
<dd>
<div class="block">Initialize step handler at the start of an ODE integration.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/events/EventFilter.html#init(double, double[], double)">init(double, double[], double)</a></span> - Method in class org.apache.commons.math3.ode.events.<a href="./org/apache/commons/math3/ode/events/EventFilter.html" title="class in org.apache.commons.math3.ode.events">EventFilter</a></dt>
<dd>
<div class="block">Initialize event handler at the start of an ODE integration.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/events/EventHandler.html#init(double, double[], double)">init(double, double[], double)</a></span> - Method in interface org.apache.commons.math3.ode.events.<a href="./org/apache/commons/math3/ode/events/EventHandler.html" title="interface in org.apache.commons.math3.ode.events">EventHandler</a></dt>
<dd>
<div class="block">Initialize event handler at the start of an ODE integration.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/DummyStepHandler.html#init(double, double[], double)">init(double, double[], double)</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/DummyStepHandler.html" title="class in org.apache.commons.math3.ode.sampling">DummyStepHandler</a></dt>
<dd>
<div class="block">Initialize step handler at the start of an ODE integration.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/FixedStepHandler.html#init(double, double[], double)">init(double, double[], double)</a></span> - Method in interface org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/FixedStepHandler.html" title="interface in org.apache.commons.math3.ode.sampling">FixedStepHandler</a></dt>
<dd>
<div class="block">Initialize step handler at the start of an ODE integration.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/StepHandler.html#init(double, double[], double)">init(double, double[], double)</a></span> - Method in interface org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/StepHandler.html" title="interface in org.apache.commons.math3.ode.sampling">StepHandler</a></dt>
<dd>
<div class="block">Initialize step handler at the start of an ODE integration.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/StepNormalizer.html#init(double, double[], double)">init(double, double[], double)</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/StepNormalizer.html" title="class in org.apache.commons.math3.ode.sampling">StepNormalizer</a></dt>
<dd>
<div class="block">Initialize step handler at the start of an ODE integration.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/InitialGuess.html" title="class in org.apache.commons.math3.optim"><span class="strong">InitialGuess</span></a> - Class in <a href="./org/apache/commons/math3/optim/package-summary.html">org.apache.commons.math3.optim</a></dt>
<dd>
<div class="block">Starting point (first guess) of the optimization procedure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/InitialGuess.html#InitialGuess(double[])">InitialGuess(double[])</a></span> - Constructor for class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/InitialGuess.html" title="class in org.apache.commons.math3.optim">InitialGuess</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optimization/InitialGuess.html" title="class in org.apache.commons.math3.optimization"><span class="strong">InitialGuess</span></a> - Class in <a href="./org/apache/commons/math3/optimization/package-summary.html">org.apache.commons.math3.optimization</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/InitialGuess.html#InitialGuess(double[])">InitialGuess(double[])</a></span> - Constructor for class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/InitialGuess.html" title="class in org.apache.commons.math3.optimization">InitialGuess</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/IterationListener.html#initializationPerformed(org.apache.commons.math3.util.IterationEvent)">initializationPerformed(IterationEvent)</a></span> - Method in interface org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/IterationListener.html" title="interface in org.apache.commons.math3.util">IterationListener</a></dt>
<dd>
<div class="block">Invoked after completion of the initial phase of the iterative algorithm
 (prior to the main iteration loop).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/MultistepIntegrator.html#initializeHighOrderDerivatives(double, double[], double[][], double[][])">initializeHighOrderDerivatives(double, double[], double[][], double[][])</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/MultistepIntegrator.html" title="class in org.apache.commons.math3.ode">MultistepIntegrator</a></dt>
<dd>
<div class="block">Initialize the high order scaled derivatives at step start.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/MultistepIntegrator.NordsieckTransformer.html#initializeHighOrderDerivatives(double, double[], double[][], double[][])">initializeHighOrderDerivatives(double, double[], double[][], double[][])</a></span> - Method in interface org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/MultistepIntegrator.NordsieckTransformer.html" title="interface in org.apache.commons.math3.ode">MultistepIntegrator.NordsieckTransformer</a></dt>
<dd>
<div class="block">Initialize the high order scaled derivatives at step start.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdamsIntegrator.html#initializeHighOrderDerivatives(double, double[], double[][], double[][])">initializeHighOrderDerivatives(double, double[], double[][], double[][])</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdamsIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">AdamsIntegrator</a></dt>
<dd>
<div class="block">Initialize the high order scaled derivatives at step start.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdamsNordsieckTransformer.html#initializeHighOrderDerivatives(double, double[], double[][], double[][])">initializeHighOrderDerivatives(double, double[], double[][], double[][])</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdamsNordsieckTransformer.html" title="class in org.apache.commons.math3.ode.nonstiff">AdamsNordsieckTransformer</a></dt>
<dd>
<div class="block">Initialize the high order scaled derivatives at step start.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html#initializeStep(boolean, int, double[], double, double[], double[], double[], double[])">initializeStep(boolean, int, double[], double, double[], double[], double[], double[])</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">AdaptiveStepsizeIntegrator</a></dt>
<dd>
<div class="block">Initialize the integration step.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractIntegrator.html#initIntegration(double, double[], double)">initIntegration(double, double[], double)</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractIntegrator.html" title="class in org.apache.commons.math3.ode">AbstractIntegrator</a></dt>
<dd>
<div class="block">Prepare the start of an integration.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html#innerDistribution">innerDistribution</a></span> - Variable in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedIntegerDistribution</a></dt>
<dd>
<div class="block"><a href="./org/apache/commons/math3/distribution/EnumeratedDistribution.html" title="class in org.apache.commons.math3.distribution"><code>EnumeratedDistribution</code></a> instance (using the <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang"><code>Integer</code></a> wrapper)
 used to generate the pmf.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/EnumeratedRealDistribution.html#innerDistribution">innerDistribution</a></span> - Variable in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/EnumeratedRealDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedRealDistribution</a></dt>
<dd>
<div class="block"><a href="./org/apache/commons/math3/distribution/EnumeratedDistribution.html" title="class in org.apache.commons.math3.distribution"><code>EnumeratedDistribution</code></a> (using the <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang"><code>Double</code></a> wrapper)
 used to generate the pmf.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/utilities/AVLTree.html#insert(T)">insert(T)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.utilities.<a href="./org/apache/commons/math3/geometry/partitioning/utilities/AVLTree.html" title="class in org.apache.commons.math3.geometry.partitioning.utilities">AVLTree</a></dt>
<dd>
<div class="block">Insert an element in the tree.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html#insertCut(org.apache.commons.math3.geometry.partitioning.Hyperplane)">insertCut(Hyperplane&lt;S&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html" title="class in org.apache.commons.math3.geometry.partitioning">BSPTree</a></dt>
<dd>
<div class="block">Insert a cut sub-hyperplane in a node.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/EquationsMapper.html#insertEquationData(double[], double[])">insertEquationData(double[], double[])</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/EquationsMapper.html" title="class in org.apache.commons.math3.ode">EquationsMapper</a></dt>
<dd>
<div class="block">Insert equation data into a complete state or derivative array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html#insertInTree(org.apache.commons.math3.geometry.partitioning.BSPTree, boolean)">insertInTree(BSPTree&lt;S&gt;, boolean)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html" title="class in org.apache.commons.math3.geometry.partitioning">BSPTree</a></dt>
<dd>
<div class="block">Insert the instance into another tree.</div>
</dd>
<dt><a href="./org/apache/commons/math3/exception/InsufficientDataException.html" title="class in org.apache.commons.math3.exception"><span class="strong">InsufficientDataException</span></a> - Exception in <a href="./org/apache/commons/math3/exception/package-summary.html">org.apache.commons.math3.exception</a></dt>
<dd>
<div class="block">Exception to be thrown when there is insufficient data to perform a computation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/InsufficientDataException.html#InsufficientDataException()">InsufficientDataException()</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/InsufficientDataException.html" title="class in org.apache.commons.math3.exception">InsufficientDataException</a></dt>
<dd>
<div class="block">Construct the exception.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/InsufficientDataException.html#InsufficientDataException(org.apache.commons.math3.exception.util.Localizable, java.lang.Object...)">InsufficientDataException(Localizable, Object...)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/InsufficientDataException.html" title="class in org.apache.commons.math3.exception">InsufficientDataException</a></dt>
<dd>
<div class="block">Construct the exception with a specific context.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MathIllegalNumberException.html#INTEGER_ZERO">INTEGER_ZERO</a></span> - Static variable in exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MathIllegalNumberException.html" title="class in org.apache.commons.math3.exception">MathIllegalNumberException</a></dt>
<dd>
<div class="block">Helper to avoid boxing warnings.</div>
</dd>
<dt><a href="./org/apache/commons/math3/distribution/IntegerDistribution.html" title="interface in org.apache.commons.math3.distribution"><span class="strong">IntegerDistribution</span></a> - Interface in <a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a></dt>
<dd>
<div class="block">Interface for distributions on the integers.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html#integrate(int, org.apache.commons.math3.analysis.UnivariateFunction, double, double)">integrate(int, UnivariateFunction, double, double)</a></span> - Method in class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">BaseAbstractUnivariateIntegrator</a></dt>
<dd>
<div class="block">Integrate the function in the given interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/gauss/GaussIntegrator.html#integrate(org.apache.commons.math3.analysis.UnivariateFunction)">integrate(UnivariateFunction)</a></span> - Method in class org.apache.commons.math3.analysis.integration.gauss.<a href="./org/apache/commons/math3/analysis/integration/gauss/GaussIntegrator.html" title="class in org.apache.commons.math3.analysis.integration.gauss">GaussIntegrator</a></dt>
<dd>
<div class="block">Returns an estimate of the integral of <code>f(x) * w(x)</code>,
 where <code>w</code> is a weight function that depends on the actual
 flavor of the Gauss integration scheme.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/gauss/SymmetricGaussIntegrator.html#integrate(org.apache.commons.math3.analysis.UnivariateFunction)">integrate(UnivariateFunction)</a></span> - Method in class org.apache.commons.math3.analysis.integration.gauss.<a href="./org/apache/commons/math3/analysis/integration/gauss/SymmetricGaussIntegrator.html" title="class in org.apache.commons.math3.analysis.integration.gauss">SymmetricGaussIntegrator</a></dt>
<dd>
<div class="block">Returns an estimate of the integral of <code>f(x) * w(x)</code>,
 where <code>w</code> is a weight function that depends on the actual
 flavor of the Gauss integration scheme.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/UnivariateIntegrator.html#integrate(int, org.apache.commons.math3.analysis.UnivariateFunction, double, double)">integrate(int, UnivariateFunction, double, double)</a></span> - Method in interface org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/UnivariateIntegrator.html" title="interface in org.apache.commons.math3.analysis.integration">UnivariateIntegrator</a></dt>
<dd>
<div class="block">Integrate the function in the given interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractIntegrator.html#integrate(org.apache.commons.math3.ode.FirstOrderDifferentialEquations, double, double[], double, double[])">integrate(FirstOrderDifferentialEquations, double, double[], double, double[])</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractIntegrator.html" title="class in org.apache.commons.math3.ode">AbstractIntegrator</a></dt>
<dd>
<div class="block">Integrate the differential equations up to the given time.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractIntegrator.html#integrate(org.apache.commons.math3.ode.ExpandableStatefulODE, double)">integrate(ExpandableStatefulODE, double)</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractIntegrator.html" title="class in org.apache.commons.math3.ode">AbstractIntegrator</a></dt>
<dd>
<div class="block">Integrate a set of differential equations up to the given time.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/FirstOrderIntegrator.html#integrate(org.apache.commons.math3.ode.FirstOrderDifferentialEquations, double, double[], double, double[])">integrate(FirstOrderDifferentialEquations, double, double[], double, double[])</a></span> - Method in interface org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/FirstOrderIntegrator.html" title="interface in org.apache.commons.math3.ode">FirstOrderIntegrator</a></dt>
<dd>
<div class="block">Integrate the differential equations up to the given time.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdamsBashforthIntegrator.html#integrate(org.apache.commons.math3.ode.ExpandableStatefulODE, double)">integrate(ExpandableStatefulODE, double)</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdamsBashforthIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">AdamsBashforthIntegrator</a></dt>
<dd>
<div class="block">Integrate a set of differential equations up to the given time.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdamsIntegrator.html#integrate(org.apache.commons.math3.ode.ExpandableStatefulODE, double)">integrate(ExpandableStatefulODE, double)</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdamsIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">AdamsIntegrator</a></dt>
<dd>
<div class="block">Integrate a set of differential equations up to the given time.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdamsMoultonIntegrator.html#integrate(org.apache.commons.math3.ode.ExpandableStatefulODE, double)">integrate(ExpandableStatefulODE, double)</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdamsMoultonIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">AdamsMoultonIntegrator</a></dt>
<dd>
<div class="block">Integrate a set of differential equations up to the given time.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html#integrate(org.apache.commons.math3.ode.ExpandableStatefulODE, double)">integrate(ExpandableStatefulODE, double)</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">AdaptiveStepsizeIntegrator</a></dt>
<dd>
<div class="block">Integrate a set of differential equations up to the given time.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/EmbeddedRungeKuttaIntegrator.html#integrate(org.apache.commons.math3.ode.ExpandableStatefulODE, double)">integrate(ExpandableStatefulODE, double)</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/EmbeddedRungeKuttaIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">EmbeddedRungeKuttaIntegrator</a></dt>
<dd>
<div class="block">Integrate a set of differential equations up to the given time.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/GraggBulirschStoerIntegrator.html#integrate(org.apache.commons.math3.ode.ExpandableStatefulODE, double)">integrate(ExpandableStatefulODE, double)</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/GraggBulirschStoerIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">GraggBulirschStoerIntegrator</a></dt>
<dd>
<div class="block">Integrate a set of differential equations up to the given time.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/RungeKuttaIntegrator.html#integrate(org.apache.commons.math3.ode.ExpandableStatefulODE, double)">integrate(ExpandableStatefulODE, double)</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/RungeKuttaIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">RungeKuttaIntegrator</a></dt>
<dd>
<div class="block">Integrate a set of differential equations up to the given time.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/SecondOrderIntegrator.html#integrate(org.apache.commons.math3.ode.SecondOrderDifferentialEquations, double, double[], double[], double, double[], double[])">integrate(SecondOrderDifferentialEquations, double, double[], double[], double, double[], double[])</a></span> - Method in interface org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/SecondOrderIntegrator.html" title="interface in org.apache.commons.math3.ode">SecondOrderIntegrator</a></dt>
<dd>
<div class="block">Integrate the differential equations up to the given time</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/BicubicSplineInterpolator.html#interpolate(double[], double[], double[][])">interpolate(double[], double[], double[][])</a></span> - Method in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/BicubicSplineInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">BicubicSplineInterpolator</a></dt>
<dd>
<div class="block">Compute an interpolating function for the dataset.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/BivariateGridInterpolator.html#interpolate(double[], double[], double[][])">interpolate(double[], double[], double[][])</a></span> - Method in interface org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/BivariateGridInterpolator.html" title="interface in org.apache.commons.math3.analysis.interpolation">BivariateGridInterpolator</a></dt>
<dd>
<div class="block">Compute an interpolating function for the dataset.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/DividedDifferenceInterpolator.html#interpolate(double[], double[])">interpolate(double[], double[])</a></span> - Method in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/DividedDifferenceInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">DividedDifferenceInterpolator</a></dt>
<dd>
<div class="block">Compute an interpolating function for the dataset.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/LinearInterpolator.html#interpolate(double[], double[])">interpolate(double[], double[])</a></span> - Method in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/LinearInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">LinearInterpolator</a></dt>
<dd>
<div class="block">Computes a linear interpolating function for the data set.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/LoessInterpolator.html#interpolate(double[], double[])">interpolate(double[], double[])</a></span> - Method in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/LoessInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">LoessInterpolator</a></dt>
<dd>
<div class="block">Compute an interpolating function by performing a loess fit
 on the data at the original abscissae and then building a cubic spline
 with a
 <a href="./org/apache/commons/math3/analysis/interpolation/SplineInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation"><code>SplineInterpolator</code></a>
 on the resulting fit.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/MicrosphereInterpolator.html#interpolate(double[][], double[])">interpolate(double[][], double[])</a></span> - Method in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/MicrosphereInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">MicrosphereInterpolator</a></dt>
<dd>
<div class="block">Computes an interpolating function for the data set.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/MultivariateInterpolator.html#interpolate(double[][], double[])">interpolate(double[][], double[])</a></span> - Method in interface org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/MultivariateInterpolator.html" title="interface in org.apache.commons.math3.analysis.interpolation">MultivariateInterpolator</a></dt>
<dd>
<div class="block">Computes an interpolating function for the data set.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/NevilleInterpolator.html#interpolate(double[], double[])">interpolate(double[], double[])</a></span> - Method in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/NevilleInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">NevilleInterpolator</a></dt>
<dd>
<div class="block">Computes an interpolating function for the data set.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/SmoothingPolynomialBicubicSplineInterpolator.html#interpolate(double[], double[], double[][])">interpolate(double[], double[], double[][])</a></span> - Method in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/SmoothingPolynomialBicubicSplineInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">SmoothingPolynomialBicubicSplineInterpolator</a></dt>
<dd>
<div class="block">Compute an interpolating function for the dataset.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/SplineInterpolator.html#interpolate(double[], double[])">interpolate(double[], double[])</a></span> - Method in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/SplineInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">SplineInterpolator</a></dt>
<dd>
<div class="block">Computes an interpolating function for the data set.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/TricubicSplineInterpolator.html#interpolate(double[], double[], double[], double[][][])">interpolate(double[], double[], double[], double[][][])</a></span> - Method in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/TricubicSplineInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">TricubicSplineInterpolator</a></dt>
<dd>
<div class="block">Compute an interpolating function for the dataset.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/TrivariateGridInterpolator.html#interpolate(double[], double[], double[], double[][][])">interpolate(double[], double[], double[], double[][][])</a></span> - Method in interface org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/TrivariateGridInterpolator.html" title="interface in org.apache.commons.math3.analysis.interpolation">TrivariateGridInterpolator</a></dt>
<dd>
<div class="block">Compute an interpolating function for the dataset.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/UnivariateInterpolator.html#interpolate(double[], double[])">interpolate(double[], double[])</a></span> - Method in interface org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/UnivariateInterpolator.html" title="interface in org.apache.commons.math3.analysis.interpolation">UnivariateInterpolator</a></dt>
<dd>
<div class="block">Compute an interpolating function for the dataset.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/UnivariatePeriodicInterpolator.html#interpolate(double[], double[])">interpolate(double[], double[])</a></span> - Method in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/UnivariatePeriodicInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">UnivariatePeriodicInterpolator</a></dt>
<dd>
<div class="block">Compute an interpolating function for the dataset.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#interpolatedDerivatives">interpolatedDerivatives</a></span> - Variable in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">interpolated derivatives</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#interpolatedPrimaryDerivatives">interpolatedPrimaryDerivatives</a></span> - Variable in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">interpolated primary derivatives</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#interpolatedPrimaryState">interpolatedPrimaryState</a></span> - Variable in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">interpolated primary state</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#interpolatedSecondaryDerivatives">interpolatedSecondaryDerivatives</a></span> - Variable in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">interpolated secondary derivatives</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#interpolatedSecondaryState">interpolatedSecondaryState</a></span> - Variable in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">interpolated secondary state</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#interpolatedState">interpolatedState</a></span> - Variable in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">interpolated state</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#interpolatedTime">interpolatedTime</a></span> - Variable in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">interpolated time</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html#intersection(org.apache.commons.math3.geometry.euclidean.threed.Line)">intersection(Line)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Line</a></dt>
<dd>
<div class="block">Get the intersection point of the instance and another line.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#intersection(org.apache.commons.math3.geometry.euclidean.threed.Line)">intersection(Line)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block">Get the intersection of a line with the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#intersection(org.apache.commons.math3.geometry.euclidean.threed.Plane)">intersection(Plane)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block">Build the line shared by the instance and another plane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#intersection(org.apache.commons.math3.geometry.euclidean.threed.Plane, org.apache.commons.math3.geometry.euclidean.threed.Plane, org.apache.commons.math3.geometry.euclidean.threed.Plane)">intersection(Plane, Plane, Plane)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block">Get the intersection point of three planes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/SubLine.html#intersection(org.apache.commons.math3.geometry.euclidean.threed.SubLine, boolean)">intersection(SubLine, boolean)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/SubLine.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">SubLine</a></dt>
<dd>
<div class="block">Get the intersection of the instance and another sub-line.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#intersection(org.apache.commons.math3.geometry.euclidean.twod.Line)">intersection(Line)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Line</a></dt>
<dd>
<div class="block">Get the intersection point of the instance and another line.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/SubLine.html#intersection(org.apache.commons.math3.geometry.euclidean.twod.SubLine, boolean)">intersection(SubLine, boolean)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/SubLine.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">SubLine</a></dt>
<dd>
<div class="block">Get the intersection of the instance and another sub-line.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html#intersection(org.apache.commons.math3.geometry.partitioning.SubHyperplane)">intersection(SubHyperplane&lt;S&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractRegion</a></dt>
<dd>
<div class="block">Get the parts of a sub-hyperplane that are contained in the region.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/Region.html#intersection(org.apache.commons.math3.geometry.partitioning.SubHyperplane)">intersection(SubHyperplane&lt;S&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/Region.html" title="interface in org.apache.commons.math3.geometry.partitioning">Region</a></dt>
<dd>
<div class="block">Get the parts of a sub-hyperplane that are contained in the region.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/RegionFactory.html#intersection(org.apache.commons.math3.geometry.partitioning.Region, org.apache.commons.math3.geometry.partitioning.Region)">intersection(Region&lt;S&gt;, Region&lt;S&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/RegionFactory.html" title="class in org.apache.commons.math3.geometry.partitioning">RegionFactory</a></dt>
<dd>
<div class="block">Compute the intersection of two regions.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/oned/Interval.html" title="class in org.apache.commons.math3.geometry.euclidean.oned"><span class="strong">Interval</span></a> - Class in <a href="./org/apache/commons/math3/geometry/euclidean/oned/package-summary.html">org.apache.commons.math3.geometry.euclidean.oned</a></dt>
<dd>
<div class="block">This class represents a 1D interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Interval.html#Interval(double, double)">Interval(double, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Interval.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Interval</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.oned"><span class="strong">IntervalsSet</span></a> - Class in <a href="./org/apache/commons/math3/geometry/euclidean/oned/package-summary.html">org.apache.commons.math3.geometry.euclidean.oned</a></dt>
<dd>
<div class="block">This class represents a 1D region: a set of intervals.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html#IntervalsSet(double)">IntervalsSet(double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">IntervalsSet</a></dt>
<dd>
<div class="block">Build an intervals set representing the whole real line.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html#IntervalsSet(double, double, double)">IntervalsSet(double, double, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">IntervalsSet</a></dt>
<dd>
<div class="block">Build an intervals set corresponding to a single interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html#IntervalsSet(org.apache.commons.math3.geometry.partitioning.BSPTree, double)">IntervalsSet(BSPTree&lt;Euclidean1D&gt;, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">IntervalsSet</a></dt>
<dd>
<div class="block">Build an intervals set from an inside/outside BSP tree.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html#IntervalsSet(java.util.Collection, double)">IntervalsSet(Collection&lt;SubHyperplane&lt;Euclidean1D&gt;&gt;, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">IntervalsSet</a></dt>
<dd>
<div class="block">Build an intervals set from a Boundary REPresentation (B-rep).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html#IntervalsSet()">IntervalsSet()</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">IntervalsSet</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1 replaced with <a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html#IntervalsSet(double)"><code>IntervalsSet.IntervalsSet(double)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html#IntervalsSet(double, double)">IntervalsSet(double, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">IntervalsSet</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.3 replaced with <a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html#IntervalsSet(double, double, double)"><code>IntervalsSet.IntervalsSet(double, double, double)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html#IntervalsSet(org.apache.commons.math3.geometry.partitioning.BSPTree)">IntervalsSet(BSPTree&lt;Euclidean1D&gt;)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">IntervalsSet</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.3, replaced with <a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html#IntervalsSet(org.apache.commons.math3.geometry.partitioning.BSPTree, double)"><code>IntervalsSet.IntervalsSet(BSPTree, double)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html#IntervalsSet(java.util.Collection)">IntervalsSet(Collection&lt;SubHyperplane&lt;Euclidean1D&gt;&gt;)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">IntervalsSet</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.3, replaced with <a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html#IntervalsSet(java.util.Collection, double)"><code>IntervalsSet.IntervalsSet(Collection, double)</code></a></i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/interval/IntervalUtils.html" title="class in org.apache.commons.math3.stat.interval"><span class="strong">IntervalUtils</span></a> - Class in <a href="./org/apache/commons/math3/stat/interval/package-summary.html">org.apache.commons.math3.stat.interval</a></dt>
<dd>
<div class="block">Factory methods to generate confidence intervals for a binomial proportion.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#intLog10()">intLog10()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Get the exponent of the greatest power of 10 that is less than or equal to abs(this).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#intValue()">intValue()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Convert this to an integer.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#intValue()">intValue()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Gets the fraction as an <tt>int</tt>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#intValue()">intValue()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">Gets the fraction as an <tt>int</tt>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#intValue()">intValue()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">

 The current implementation performs casting to a <code>int</code>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/genetics/InvalidRepresentationException.html" title="class in org.apache.commons.math3.genetics"><span class="strong">InvalidRepresentationException</span></a> - Exception in <a href="./org/apache/commons/math3/genetics/package-summary.html">org.apache.commons.math3.genetics</a></dt>
<dd>
<div class="block">Exception indicating that the representation of a chromosome is not valid.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/InvalidRepresentationException.html#InvalidRepresentationException(org.apache.commons.math3.exception.util.Localizable, java.lang.Object...)">InvalidRepresentationException(Localizable, Object...)</a></span> - Constructor for exception org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/InvalidRepresentationException.html" title="class in org.apache.commons.math3.genetics">InvalidRepresentationException</a></dt>
<dd>
<div class="block">Construct an InvalidRepresentationException with a specialized message.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Inverse.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Inverse</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Inverse function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Inverse.html#Inverse()">Inverse()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Inverse.html" title="class in org.apache.commons.math3.analysis.function">Inverse</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DiagonalMatrix.html#inverse()">inverse()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DiagonalMatrix.html" title="class in org.apache.commons.math3.linear">DiagonalMatrix</a></dt>
<dd>
<div class="block">Computes the inverse of this diagonal matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DiagonalMatrix.html#inverse(double)">inverse(double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DiagonalMatrix.html" title="class in org.apache.commons.math3.linear">DiagonalMatrix</a></dt>
<dd>
<div class="block">Computes the inverse of this diagonal matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#inverse(org.apache.commons.math3.linear.RealMatrix)">inverse(RealMatrix)</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Computes the inverse of the given matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#inverse(org.apache.commons.math3.linear.RealMatrix, double)">inverse(RealMatrix, double)</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Computes the inverse of the given matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/AbstractIntegerDistribution.html#inverseCumulativeProbability(double)">inverseCumulativeProbability(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/AbstractIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractIntegerDistribution</a></dt>
<dd>
<div class="block">Computes the quantile function of this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/AbstractRealDistribution.html#inverseCumulativeProbability(double)">inverseCumulativeProbability(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/AbstractRealDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractRealDistribution</a></dt>
<dd>
<div class="block">Computes the quantile function of this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/CauchyDistribution.html#inverseCumulativeProbability(double)">inverseCumulativeProbability(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/CauchyDistribution.html" title="class in org.apache.commons.math3.distribution">CauchyDistribution</a></dt>
<dd>
<div class="block">Computes the quantile function of this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/EnumeratedRealDistribution.html#inverseCumulativeProbability(double)">inverseCumulativeProbability(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/EnumeratedRealDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedRealDistribution</a></dt>
<dd>
<div class="block">Computes the quantile function of this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html#inverseCumulativeProbability(double)">inverseCumulativeProbability(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html" title="class in org.apache.commons.math3.distribution">ExponentialDistribution</a></dt>
<dd>
<div class="block">Computes the quantile function of this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/IntegerDistribution.html#inverseCumulativeProbability(double)">inverseCumulativeProbability(double)</a></span> - Method in interface org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/IntegerDistribution.html" title="interface in org.apache.commons.math3.distribution">IntegerDistribution</a></dt>
<dd>
<div class="block">Computes the quantile function of this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LevyDistribution.html#inverseCumulativeProbability(double)">inverseCumulativeProbability(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LevyDistribution.html" title="class in org.apache.commons.math3.distribution">LevyDistribution</a></dt>
<dd>
<div class="block">Computes the quantile function of this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/NormalDistribution.html#inverseCumulativeProbability(double)">inverseCumulativeProbability(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/NormalDistribution.html" title="class in org.apache.commons.math3.distribution">NormalDistribution</a></dt>
<dd>
<div class="block">Computes the quantile function of this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/RealDistribution.html#inverseCumulativeProbability(double)">inverseCumulativeProbability(double)</a></span> - Method in interface org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/RealDistribution.html" title="interface in org.apache.commons.math3.distribution">RealDistribution</a></dt>
<dd>
<div class="block">Computes the quantile function of this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/TriangularDistribution.html#inverseCumulativeProbability(double)">inverseCumulativeProbability(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/TriangularDistribution.html" title="class in org.apache.commons.math3.distribution">TriangularDistribution</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html#inverseCumulativeProbability(double)">inverseCumulativeProbability(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html" title="class in org.apache.commons.math3.distribution">UniformRealDistribution</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/WeibullDistribution.html#inverseCumulativeProbability(double)">inverseCumulativeProbability(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/WeibullDistribution.html" title="class in org.apache.commons.math3.distribution">WeibullDistribution</a></dt>
<dd>
<div class="block">Computes the quantile function of this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#inverseCumulativeProbability(double)">inverseCumulativeProbability(double)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random">EmpiricalDistribution</a></dt>
<dd>
<div class="block">Computes the quantile function of this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/special/Gamma.html#invGamma1pm1(double)">invGamma1pm1(double)</a></span> - Static method in class org.apache.commons.math3.special.<a href="./org/apache/commons/math3/special/Gamma.html" title="class in org.apache.commons.math3.special">Gamma</a></dt>
<dd>
<div class="block">Returns the value of 1 / &Gamma;(1 + x) - 1 for -0&#46;5 &le; x &le;
 1&#46;5.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/AbstractWell.html#iRm1">iRm1</a></span> - Variable in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/AbstractWell.html" title="class in org.apache.commons.math3.random">AbstractWell</a></dt>
<dd>
<div class="block">Index indirection table giving for each index its predecessor taking table size into account.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/AbstractWell.html#iRm2">iRm2</a></span> - Variable in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/AbstractWell.html" title="class in org.apache.commons.math3.random">AbstractWell</a></dt>
<dd>
<div class="block">Index indirection table giving for each index its second predecessor taking table size into account.</div>
</dd>
<dt><a href="./org/apache/commons/math3/random/ISAACRandom.html" title="class in org.apache.commons.math3.random"><span class="strong">ISAACRandom</span></a> - Class in <a href="./org/apache/commons/math3/random/package-summary.html">org.apache.commons.math3.random</a></dt>
<dd>
<div class="block"><a href="http://burtleburtle.net/bob/rand/isaacafa.html">
  ISAAC: a fast cryptographic pseudo-random number generator</a>
 <br/>
 ISAAC (Indirection, Shift, Accumulate, Add, and Count) generates 32-bit
 random numbers.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/ISAACRandom.html#ISAACRandom()">ISAACRandom()</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/ISAACRandom.html" title="class in org.apache.commons.math3.random">ISAACRandom</a></dt>
<dd>
<div class="block">Creates a new ISAAC random number generator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/ISAACRandom.html#ISAACRandom(long)">ISAACRandom(long)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/ISAACRandom.html" title="class in org.apache.commons.math3.random">ISAACRandom</a></dt>
<dd>
<div class="block">Creates a new ISAAC random number generator using a single long seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/ISAACRandom.html#ISAACRandom(int[])">ISAACRandom(int[])</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/ISAACRandom.html" title="class in org.apache.commons.math3.random">ISAACRandom</a></dt>
<dd>
<div class="block">Creates a new ISAAC random number generator using an int array seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/evaluation/ClusterEvaluator.html#isBetterScore(double, double)">isBetterScore(double, double)</a></span> - Method in class org.apache.commons.math3.ml.clustering.evaluation.<a href="./org/apache/commons/math3/ml/clustering/evaluation/ClusterEvaluator.html" title="class in org.apache.commons.math3.ml.clustering.evaluation">ClusterEvaluator</a></dt>
<dd>
<div class="block">Returns whether the first evaluation score is considered to be better
 than the second one by this evaluator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html#isBiasCorrected()">isBiasCorrected()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">SemiVariance</a></dt>
<dd>
<div class="block">Returns true iff biasCorrected property is set to true.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html#isBiasCorrected()">isBiasCorrected()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html" title="class in org.apache.commons.math3.stat.descriptive.moment">StandardDeviation</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html#isBiasCorrected()">isBiasCorrected()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Variance</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html#isBracketing(double, double)">isBracketing(double, double)</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BaseAbstractUnivariateSolver</a></dt>
<dd>
<div class="block">Check whether the function takes opposite signs at the endpoints.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/UnivariateSolverUtils.html#isBracketing(org.apache.commons.math3.analysis.UnivariateFunction, double, double)">isBracketing(UnivariateFunction, double, double)</a></span> - Static method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/UnivariateSolverUtils.html" title="class in org.apache.commons.math3.analysis.solvers">UnivariateSolverUtils</a></dt>
<dd>
<div class="block">Check whether the interval bounds bracket a root.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/RootsOfUnity.html#isCounterClockWise()">isCounterClockWise()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/RootsOfUnity.html" title="class in org.apache.commons.math3.complex">RootsOfUnity</a></dt>
<dd>
<div class="block">Returns <code>true</code> if <a href="./org/apache/commons/math3/complex/RootsOfUnity.html#computeRoots(int)"><code>RootsOfUnity.computeRoots(int)</code></a> was called with a
 positive value of its argument <code>n</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#isDefaultValue(double)">isDefaultValue(double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Determine if this value is within epsilon of zero.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/OrientedPoint.html#isDirect()">isDirect()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/OrientedPoint.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">OrientedPoint</a></dt>
<dd>
<div class="block">Check if the hyperplane orientation is direct.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/LimitAngle.html#isDirect()">isDirect()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/LimitAngle.html" title="class in org.apache.commons.math3.geometry.spherical.oned">LimitAngle</a></dt>
<dd>
<div class="block">Check if the hyperplane orientation is direct.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/SubOrientedPoint.html#isEmpty()">isEmpty()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/SubOrientedPoint.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">SubOrientedPoint</a></dt>
<dd>
<div class="block">Check if the instance is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html#isEmpty()">isEmpty()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractRegion</a></dt>
<dd>
<div class="block">Check if the instance is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html#isEmpty(org.apache.commons.math3.geometry.partitioning.BSPTree)">isEmpty(BSPTree&lt;S&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractRegion</a></dt>
<dd>
<div class="block">Check if the sub-tree starting at a given node is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractSubHyperplane.html#isEmpty()">isEmpty()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractSubHyperplane.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractSubHyperplane</a></dt>
<dd>
<div class="block">Check if the instance is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/Region.html#isEmpty()">isEmpty()</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/Region.html" title="interface in org.apache.commons.math3.geometry.partitioning">Region</a></dt>
<dd>
<div class="block">Check if the instance is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/Region.html#isEmpty(org.apache.commons.math3.geometry.partitioning.BSPTree)">isEmpty(BSPTree&lt;S&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/Region.html" title="interface in org.apache.commons.math3.geometry.partitioning">Region</a></dt>
<dd>
<div class="block">Check if the sub-tree starting at a given node is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/SubHyperplane.html#isEmpty()">isEmpty()</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/SubHyperplane.html" title="interface in org.apache.commons.math3.geometry.partitioning">SubHyperplane</a></dt>
<dd>
<div class="block">Check if the instance is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/utilities/AVLTree.html#isEmpty()">isEmpty()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.utilities.<a href="./org/apache/commons/math3/geometry/partitioning/utilities/AVLTree.html" title="class in org.apache.commons.math3.geometry.partitioning.utilities">AVLTree</a></dt>
<dd>
<div class="block">Check if the tree is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/SubLimitAngle.html#isEmpty()">isEmpty()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/SubLimitAngle.html" title="class in org.apache.commons.math3.geometry.spherical.oned">SubLimitAngle</a></dt>
<dd>
<div class="block">Check if the instance is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#isForward()">isForward()</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">Check if the natural integration direction is forward.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/StepInterpolator.html#isForward()">isForward()</a></span> - Method in interface org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/StepInterpolator.html" title="interface in org.apache.commons.math3.ode.sampling">StepInterpolator</a></dt>
<dd>
<div class="block">Check if the natural integration direction is forward.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html#isFull()">isFull()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractRegion</a></dt>
<dd>
<div class="block">Check if the instance covers the full space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html#isFull(org.apache.commons.math3.geometry.partitioning.BSPTree)">isFull(BSPTree&lt;S&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractRegion</a></dt>
<dd>
<div class="block">Check if the sub-tree starting at a given node covers the full space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/Region.html#isFull()">isFull()</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/Region.html" title="interface in org.apache.commons.math3.geometry.partitioning">Region</a></dt>
<dd>
<div class="block">Check if the instance covers the full space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/Region.html#isFull(org.apache.commons.math3.geometry.partitioning.BSPTree)">isFull(BSPTree&lt;S&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/Region.html" title="interface in org.apache.commons.math3.geometry.partitioning">Region</a></dt>
<dd>
<div class="block">Check if the sub-tree starting at a given node covers the full space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#isInfinite()">isInfinite()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Checks whether either the real or imaginary part of this complex number
 takes an infinite value (either <code>Double.POSITIVE_INFINITY</code> or
 <code>Double.NEGATIVE_INFINITY</code>) and neither part
 is <code>NaN</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#isInfinite()">isInfinite()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Check if instance is infinite.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#isInfinite()">isInfinite()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Returns true if any coordinate of this vector is infinite and none are NaN;
 false otherwise</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#isInfinite()">isInfinite()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Returns true if any coordinate of this vector is infinite and none are NaN;
 false otherwise</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#isInfinite()">isInfinite()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Returns true if any coordinate of this vector is infinite and none are NaN;
 false otherwise</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#isInfinite()">isInfinite()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Returns true if any coordinate of this vector is infinite and none are NaN;
 false otherwise</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/Vector.html#isInfinite()">isInfinite()</a></span> - Method in interface org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/Vector.html" title="interface in org.apache.commons.math3.geometry">Vector</a></dt>
<dd>
<div class="block">Returns true if any coordinate of this vector is infinite and none are NaN;
 false otherwise</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#isInfinite()">isInfinite()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Check whether any coordinate of this vector is infinite and none
 are <code>NaN</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#isInfinite()">isInfinite()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Check whether any coordinate of this vector is infinite and none are <code>NaN</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#isInfinite()">isInfinite()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Check whether any coordinate of this vector is infinite and none are <code>NaN</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#isInfinite()">isInfinite()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Returns <code>true</code> if <code>this</code> double precision number is infinite
 (<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Double.html?is-external=true#POSITIVE_INFINITY" title="class or interface in java.lang"><code>Double.POSITIVE_INFINITY</code></a> or <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Double.html?is-external=true#NEGATIVE_INFINITY" title="class or interface in java.lang"><code>Double.NEGATIVE_INFINITY</code></a>).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractIntegrator.html#isLastStep">isLastStep</a></span> - Variable in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractIntegrator.html" title="class in org.apache.commons.math3.ode">AbstractIntegrator</a></dt>
<dd>
<div class="block">Indicator for last step.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#isLoaded()">isLoaded()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random">EmpiricalDistribution</a></dt>
<dd>
<div class="block">Property indicating whether or not the distribution has been loaded.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#isMonotonic(T[], org.apache.commons.math3.util.MathArrays.OrderDirection, boolean)">isMonotonic(T[], MathArrays.OrderDirection, boolean)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Check that an array is monotonically increasing or decreasing.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#isMonotonic(double[], org.apache.commons.math3.util.MathArrays.OrderDirection, boolean)">isMonotonic(double[], MathArrays.OrderDirection, boolean)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Check that an array is monotonically increasing or decreasing.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#isNaN()">isNaN()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Checks whether either or both parts of this complex number is
 <code>NaN</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#isNaN()">isNaN()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Check if instance is not a number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#isNaN()">isNaN()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Returns true if any coordinate of this point is NaN; false otherwise</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#isNaN()">isNaN()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Returns true if any coordinate of this vector is NaN; false otherwise</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#isNaN()">isNaN()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Returns true if any coordinate of this point is NaN; false otherwise</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#isNaN()">isNaN()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Returns true if any coordinate of this point is NaN; false otherwise</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/Point.html#isNaN()">isNaN()</a></span> - Method in interface org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/Point.html" title="interface in org.apache.commons.math3.geometry">Point</a></dt>
<dd>
<div class="block">Returns true if any coordinate of this point is NaN; false otherwise</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/S1Point.html#isNaN()">isNaN()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/S1Point.html" title="class in org.apache.commons.math3.geometry.spherical.oned">S1Point</a></dt>
<dd>
<div class="block">Returns true if any coordinate of this point is NaN; false otherwise</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html#isNaN()">isNaN()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html" title="class in org.apache.commons.math3.geometry.spherical.twod">S2Point</a></dt>
<dd>
<div class="block">Returns true if any coordinate of this point is NaN; false otherwise</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#isNaN()">isNaN()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Check if any coordinate of this vector is <code>NaN</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#isNaN()">isNaN()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Check whether any coordinate of this vector is <code>NaN</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#isNaN()">isNaN()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Check whether any coordinate of this vector is <code>NaN</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#isNaN()">isNaN()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Returns <code>true</code> if <code>this</code> double precision number is
 Not-a-Number (<code>NaN</code>), false otherwise.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html#isNoIntercept()">isNoIntercept()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">AbstractMultipleLinearRegression</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DecompositionSolver.html#isNonSingular()">isNonSingular()</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DecompositionSolver.html" title="interface in org.apache.commons.math3.linear">DecompositionSolver</a></dt>
<dd>
<div class="block">Check if the decomposed matrix is non-singular.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldDecompositionSolver.html#isNonSingular()">isNonSingular()</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldDecompositionSolver.html" title="interface in org.apache.commons.math3.linear">FieldDecompositionSolver</a></dt>
<dd>
<div class="block">Check if the decomposed matrix is non-singular.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#isParallelTo(org.apache.commons.math3.geometry.euclidean.twod.Line)">isParallelTo(Line)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Line</a></dt>
<dd>
<div class="block">Check the instance is parallel to another line.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ArithmeticUtils.html#isPowerOfTwo(long)">isPowerOfTwo(long)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ArithmeticUtils.html" title="class in org.apache.commons.math3.util">ArithmeticUtils</a></dt>
<dd>
<div class="block">Returns true if the argument is a power of two.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/primes/Primes.html#isPrime(int)">isPrime(int)</a></span> - Static method in class org.apache.commons.math3.primes.<a href="./org/apache/commons/math3/primes/Primes.html" title="class in org.apache.commons.math3.primes">Primes</a></dt>
<dd>
<div class="block">Primality test: tells if the argument is a (provable) prime or not.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Quaternion.html#isPureQuaternion(double)">isPureQuaternion(double)</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex">Quaternion</a></dt>
<dd>
<div class="block">Checks whether the instance is a pure quaternion within a given
 tolerance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/CycleCrossover.html#isRandomStart()">isRandomStart()</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/CycleCrossover.html" title="class in org.apache.commons.math3.genetics">CycleCrossover</a></dt>
<dd>
<div class="block">Returns whether the starting index is chosen randomly or set to zero.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/LinearOptimizer.html#isRestrictedToNonNegative()">isRestrictedToNonNegative()</a></span> - Method in class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/LinearOptimizer.html" title="class in org.apache.commons.math3.optim.linear">LinearOptimizer</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/NonNegativeConstraint.html#isRestrictedToNonNegative()">isRestrictedToNonNegative()</a></span> - Method in class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/NonNegativeConstraint.html" title="class in org.apache.commons.math3.optim.linear">NonNegativeConstraint</a></dt>
<dd>
<div class="block">Indicates whether all the variables must be restricted to non-negative
 values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/BinaryChromosome.html#isSame(org.apache.commons.math3.genetics.Chromosome)">isSame(Chromosome)</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/BinaryChromosome.html" title="class in org.apache.commons.math3.genetics">BinaryChromosome</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/Chromosome.html#isSame(org.apache.commons.math3.genetics.Chromosome)">isSame(Chromosome)</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/Chromosome.html" title="class in org.apache.commons.math3.genetics">Chromosome</a></dt>
<dd>
<div class="block">Returns <code>true</code> iff <code>another</code> has the same representation and therefore the same fitness.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/RandomKey.html#isSame(org.apache.commons.math3.genetics.Chromosome)">isSame(Chromosome)</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/RandomKey.html" title="class in org.apache.commons.math3.genetics">RandomKey</a></dt>
<dd>
<div class="block">Returns <code>true</code> iff <code>another</code> is a RandomKey and
 encodes the same permutation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/FixedElapsedTime.html#isSatisfied(org.apache.commons.math3.genetics.Population)">isSatisfied(Population)</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/FixedElapsedTime.html" title="class in org.apache.commons.math3.genetics">FixedElapsedTime</a></dt>
<dd>
<div class="block">Determine whether or not the maximum allowed time has passed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/FixedGenerationCount.html#isSatisfied(org.apache.commons.math3.genetics.Population)">isSatisfied(Population)</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/FixedGenerationCount.html" title="class in org.apache.commons.math3.genetics">FixedGenerationCount</a></dt>
<dd>
<div class="block">Determine whether or not the given number of generations have passed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/StoppingCondition.html#isSatisfied(org.apache.commons.math3.genetics.Population)">isSatisfied(Population)</a></span> - Method in interface org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/StoppingCondition.html" title="interface in org.apache.commons.math3.genetics">StoppingCondition</a></dt>
<dd>
<div class="block">Determine whether or not the given population satisfies the stopping condition.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html#isSequence(double, double, double)">isSequence(double, double, double)</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BaseAbstractUnivariateSolver</a></dt>
<dd>
<div class="block">Check whether the arguments form a (strictly) increasing sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/UnivariateSolverUtils.html#isSequence(double, double, double)">isSequence(double, double, double)</a></span> - Static method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/UnivariateSolverUtils.html" title="class in org.apache.commons.math3.analysis.solvers">UnivariateSolverUtils</a></dt>
<dd>
<div class="block">Check whether the arguments form a (strictly) increasing sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html#isSimilarTo(org.apache.commons.math3.geometry.euclidean.threed.Line)">isSimilarTo(Line)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Line</a></dt>
<dd>
<div class="block">Check if the instance is similar to another line.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#isSimilarTo(org.apache.commons.math3.geometry.euclidean.threed.Plane)">isSimilarTo(Plane)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block">Check if the instance is similar to another plane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DiagonalMatrix.html#isSingular(double)">isSingular(double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DiagonalMatrix.html" title="class in org.apache.commons.math3.linear">DiagonalMatrix</a></dt>
<dd>
<div class="block">Returns whether this diagonal matrix is singular, i.e.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/SolutionCallback.html#isSolutionOptimal()">isSolutionOptimal()</a></span> - Method in class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/SolutionCallback.html" title="class in org.apache.commons.math3.optim.linear">SolutionCallback</a></dt>
<dd>
<div class="block">Returns if the found solution is optimal.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#isSquare()">isSquare()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Is this a square matrix?</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#isSquare()">isSquare()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Is this a square matrix?</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AnyMatrix.html#isSquare()">isSquare()</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AnyMatrix.html" title="interface in org.apache.commons.math3.linear">AnyMatrix</a></dt>
<dd>
<div class="block">Is this a square matrix?</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/BetaDistribution.html#isSupportConnected()">isSupportConnected()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/BetaDistribution.html" title="class in org.apache.commons.math3.distribution">BetaDistribution</a></dt>
<dd>
<div class="block">Use this method to get information about whether the support is connected,
 i.e.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/BinomialDistribution.html#isSupportConnected()">isSupportConnected()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/BinomialDistribution.html" title="class in org.apache.commons.math3.distribution">BinomialDistribution</a></dt>
<dd>
<div class="block">Use this method to get information about whether the support is
 connected, i.e.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/CauchyDistribution.html#isSupportConnected()">isSupportConnected()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/CauchyDistribution.html" title="class in org.apache.commons.math3.distribution">CauchyDistribution</a></dt>
<dd>
<div class="block">Use this method to get information about whether the support is connected,
 i.e.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html#isSupportConnected()">isSupportConnected()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html" title="class in org.apache.commons.math3.distribution">ChiSquaredDistribution</a></dt>
<dd>
<div class="block">Use this method to get information about whether the support is connected,
 i.e.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html#isSupportConnected()">isSupportConnected()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedIntegerDistribution</a></dt>
<dd>
<div class="block">Use this method to get information about whether the support is
 connected, i.e.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/EnumeratedRealDistribution.html#isSupportConnected()">isSupportConnected()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/EnumeratedRealDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedRealDistribution</a></dt>
<dd>
<div class="block">Use this method to get information about whether the support is connected,
 i.e.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html#isSupportConnected()">isSupportConnected()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html" title="class in org.apache.commons.math3.distribution">ExponentialDistribution</a></dt>
<dd>
<div class="block">Use this method to get information about whether the support is connected,
 i.e.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/FDistribution.html#isSupportConnected()">isSupportConnected()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/FDistribution.html" title="class in org.apache.commons.math3.distribution">FDistribution</a></dt>
<dd>
<div class="block">Use this method to get information about whether the support is connected,
 i.e.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/GammaDistribution.html#isSupportConnected()">isSupportConnected()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/GammaDistribution.html" title="class in org.apache.commons.math3.distribution">GammaDistribution</a></dt>
<dd>
<div class="block">Use this method to get information about whether the support is connected,
 i.e.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/GeometricDistribution.html#isSupportConnected()">isSupportConnected()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/GeometricDistribution.html" title="class in org.apache.commons.math3.distribution">GeometricDistribution</a></dt>
<dd>
<div class="block">Use this method to get information about whether the support is
 connected, i.e.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/HypergeometricDistribution.html#isSupportConnected()">isSupportConnected()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/HypergeometricDistribution.html" title="class in org.apache.commons.math3.distribution">HypergeometricDistribution</a></dt>
<dd>
<div class="block">Use this method to get information about whether the support is
 connected, i.e.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/IntegerDistribution.html#isSupportConnected()">isSupportConnected()</a></span> - Method in interface org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/IntegerDistribution.html" title="interface in org.apache.commons.math3.distribution">IntegerDistribution</a></dt>
<dd>
<div class="block">Use this method to get information about whether the support is
 connected, i.e.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LevyDistribution.html#isSupportConnected()">isSupportConnected()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LevyDistribution.html" title="class in org.apache.commons.math3.distribution">LevyDistribution</a></dt>
<dd>
<div class="block">Use this method to get information about whether the support is connected,
 i.e.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html#isSupportConnected()">isSupportConnected()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html" title="class in org.apache.commons.math3.distribution">LogNormalDistribution</a></dt>
<dd>
<div class="block">Use this method to get information about whether the support is connected,
 i.e.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/NormalDistribution.html#isSupportConnected()">isSupportConnected()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/NormalDistribution.html" title="class in org.apache.commons.math3.distribution">NormalDistribution</a></dt>
<dd>
<div class="block">Use this method to get information about whether the support is connected,
 i.e.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ParetoDistribution.html#isSupportConnected()">isSupportConnected()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ParetoDistribution.html" title="class in org.apache.commons.math3.distribution">ParetoDistribution</a></dt>
<dd>
<div class="block">Use this method to get information about whether the support is connected,
 i.e.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/PascalDistribution.html#isSupportConnected()">isSupportConnected()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/PascalDistribution.html" title="class in org.apache.commons.math3.distribution">PascalDistribution</a></dt>
<dd>
<div class="block">Use this method to get information about whether the support is
 connected, i.e.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/PoissonDistribution.html#isSupportConnected()">isSupportConnected()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/PoissonDistribution.html" title="class in org.apache.commons.math3.distribution">PoissonDistribution</a></dt>
<dd>
<div class="block">Use this method to get information about whether the support is
 connected, i.e.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/RealDistribution.html#isSupportConnected()">isSupportConnected()</a></span> - Method in interface org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/RealDistribution.html" title="interface in org.apache.commons.math3.distribution">RealDistribution</a></dt>
<dd>
<div class="block">Use this method to get information about whether the support is connected,
 i.e.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/TDistribution.html#isSupportConnected()">isSupportConnected()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/TDistribution.html" title="class in org.apache.commons.math3.distribution">TDistribution</a></dt>
<dd>
<div class="block">Use this method to get information about whether the support is connected,
 i.e.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/TriangularDistribution.html#isSupportConnected()">isSupportConnected()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/TriangularDistribution.html" title="class in org.apache.commons.math3.distribution">TriangularDistribution</a></dt>
<dd>
<div class="block">Use this method to get information about whether the support is connected,
 i.e.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/UniformIntegerDistribution.html#isSupportConnected()">isSupportConnected()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/UniformIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">UniformIntegerDistribution</a></dt>
<dd>
<div class="block">Use this method to get information about whether the support is
 connected, i.e.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html#isSupportConnected()">isSupportConnected()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html" title="class in org.apache.commons.math3.distribution">UniformRealDistribution</a></dt>
<dd>
<div class="block">Use this method to get information about whether the support is connected,
 i.e.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/WeibullDistribution.html#isSupportConnected()">isSupportConnected()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/WeibullDistribution.html" title="class in org.apache.commons.math3.distribution">WeibullDistribution</a></dt>
<dd>
<div class="block">Use this method to get information about whether the support is connected,
 i.e.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ZipfDistribution.html#isSupportConnected()">isSupportConnected()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ZipfDistribution.html" title="class in org.apache.commons.math3.distribution">ZipfDistribution</a></dt>
<dd>
<div class="block">Use this method to get information about whether the support is
 connected, i.e.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#isSupportConnected()">isSupportConnected()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random">EmpiricalDistribution</a></dt>
<dd>
<div class="block">Use this method to get information about whether the support is connected,
 i.e.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractParameterizable.html#isSupported(java.lang.String)">isSupported(String)</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractParameterizable.html" title="class in org.apache.commons.math3.ode">AbstractParameterizable</a></dt>
<dd>
<div class="block">Check if a parameter is supported.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/Parameterizable.html#isSupported(java.lang.String)">isSupported(String)</a></span> - Method in interface org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/Parameterizable.html" title="interface in org.apache.commons.math3.ode">Parameterizable</a></dt>
<dd>
<div class="block">Check if a parameter is supported.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/BetaDistribution.html#isSupportLowerBoundInclusive()">isSupportLowerBoundInclusive()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/BetaDistribution.html" title="class in org.apache.commons.math3.distribution">BetaDistribution</a></dt>
<dd>
<div class="block">Whether or not the lower bound of support is in the domain of the density
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/CauchyDistribution.html#isSupportLowerBoundInclusive()">isSupportLowerBoundInclusive()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/CauchyDistribution.html" title="class in org.apache.commons.math3.distribution">CauchyDistribution</a></dt>
<dd>
<div class="block">Whether or not the lower bound of support is in the domain of the density
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html#isSupportLowerBoundInclusive()">isSupportLowerBoundInclusive()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html" title="class in org.apache.commons.math3.distribution">ChiSquaredDistribution</a></dt>
<dd>
<div class="block">Whether or not the lower bound of support is in the domain of the density
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/EnumeratedRealDistribution.html#isSupportLowerBoundInclusive()">isSupportLowerBoundInclusive()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/EnumeratedRealDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedRealDistribution</a></dt>
<dd>
<div class="block">Whether or not the lower bound of support is in the domain of the density
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html#isSupportLowerBoundInclusive()">isSupportLowerBoundInclusive()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html" title="class in org.apache.commons.math3.distribution">ExponentialDistribution</a></dt>
<dd>
<div class="block">Whether or not the lower bound of support is in the domain of the density
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/FDistribution.html#isSupportLowerBoundInclusive()">isSupportLowerBoundInclusive()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/FDistribution.html" title="class in org.apache.commons.math3.distribution">FDistribution</a></dt>
<dd>
<div class="block">Whether or not the lower bound of support is in the domain of the density
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/GammaDistribution.html#isSupportLowerBoundInclusive()">isSupportLowerBoundInclusive()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/GammaDistribution.html" title="class in org.apache.commons.math3.distribution">GammaDistribution</a></dt>
<dd>
<div class="block">Whether or not the lower bound of support is in the domain of the density
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LevyDistribution.html#isSupportLowerBoundInclusive()">isSupportLowerBoundInclusive()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LevyDistribution.html" title="class in org.apache.commons.math3.distribution">LevyDistribution</a></dt>
<dd>
<div class="block">Whether or not the lower bound of support is in the domain of the density
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html#isSupportLowerBoundInclusive()">isSupportLowerBoundInclusive()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html" title="class in org.apache.commons.math3.distribution">LogNormalDistribution</a></dt>
<dd>
<div class="block">Whether or not the lower bound of support is in the domain of the density
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/NormalDistribution.html#isSupportLowerBoundInclusive()">isSupportLowerBoundInclusive()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/NormalDistribution.html" title="class in org.apache.commons.math3.distribution">NormalDistribution</a></dt>
<dd>
<div class="block">Whether or not the lower bound of support is in the domain of the density
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ParetoDistribution.html#isSupportLowerBoundInclusive()">isSupportLowerBoundInclusive()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ParetoDistribution.html" title="class in org.apache.commons.math3.distribution">ParetoDistribution</a></dt>
<dd>
<div class="block">Whether or not the lower bound of support is in the domain of the density
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/RealDistribution.html#isSupportLowerBoundInclusive()">isSupportLowerBoundInclusive()</a></span> - Method in interface org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/RealDistribution.html" title="interface in org.apache.commons.math3.distribution">RealDistribution</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>to be removed in 4.0</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/TDistribution.html#isSupportLowerBoundInclusive()">isSupportLowerBoundInclusive()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/TDistribution.html" title="class in org.apache.commons.math3.distribution">TDistribution</a></dt>
<dd>
<div class="block">Whether or not the lower bound of support is in the domain of the density
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/TriangularDistribution.html#isSupportLowerBoundInclusive()">isSupportLowerBoundInclusive()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/TriangularDistribution.html" title="class in org.apache.commons.math3.distribution">TriangularDistribution</a></dt>
<dd>
<div class="block">Whether or not the lower bound of support is in the domain of the density
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html#isSupportLowerBoundInclusive()">isSupportLowerBoundInclusive()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html" title="class in org.apache.commons.math3.distribution">UniformRealDistribution</a></dt>
<dd>
<div class="block">Whether or not the lower bound of support is in the domain of the density
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/WeibullDistribution.html#isSupportLowerBoundInclusive()">isSupportLowerBoundInclusive()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/WeibullDistribution.html" title="class in org.apache.commons.math3.distribution">WeibullDistribution</a></dt>
<dd>
<div class="block">Whether or not the lower bound of support is in the domain of the density
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#isSupportLowerBoundInclusive()">isSupportLowerBoundInclusive()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random">EmpiricalDistribution</a></dt>
<dd>
<div class="block">Whether or not the lower bound of support is in the domain of the density
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/BetaDistribution.html#isSupportUpperBoundInclusive()">isSupportUpperBoundInclusive()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/BetaDistribution.html" title="class in org.apache.commons.math3.distribution">BetaDistribution</a></dt>
<dd>
<div class="block">Whether or not the upper bound of support is in the domain of the density
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/CauchyDistribution.html#isSupportUpperBoundInclusive()">isSupportUpperBoundInclusive()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/CauchyDistribution.html" title="class in org.apache.commons.math3.distribution">CauchyDistribution</a></dt>
<dd>
<div class="block">Whether or not the upper bound of support is in the domain of the density
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html#isSupportUpperBoundInclusive()">isSupportUpperBoundInclusive()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html" title="class in org.apache.commons.math3.distribution">ChiSquaredDistribution</a></dt>
<dd>
<div class="block">Whether or not the upper bound of support is in the domain of the density
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/EnumeratedRealDistribution.html#isSupportUpperBoundInclusive()">isSupportUpperBoundInclusive()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/EnumeratedRealDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedRealDistribution</a></dt>
<dd>
<div class="block">Whether or not the upper bound of support is in the domain of the density
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html#isSupportUpperBoundInclusive()">isSupportUpperBoundInclusive()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html" title="class in org.apache.commons.math3.distribution">ExponentialDistribution</a></dt>
<dd>
<div class="block">Whether or not the upper bound of support is in the domain of the density
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/FDistribution.html#isSupportUpperBoundInclusive()">isSupportUpperBoundInclusive()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/FDistribution.html" title="class in org.apache.commons.math3.distribution">FDistribution</a></dt>
<dd>
<div class="block">Whether or not the upper bound of support is in the domain of the density
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/GammaDistribution.html#isSupportUpperBoundInclusive()">isSupportUpperBoundInclusive()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/GammaDistribution.html" title="class in org.apache.commons.math3.distribution">GammaDistribution</a></dt>
<dd>
<div class="block">Whether or not the upper bound of support is in the domain of the density
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LevyDistribution.html#isSupportUpperBoundInclusive()">isSupportUpperBoundInclusive()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LevyDistribution.html" title="class in org.apache.commons.math3.distribution">LevyDistribution</a></dt>
<dd>
<div class="block">Whether or not the upper bound of support is in the domain of the density
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html#isSupportUpperBoundInclusive()">isSupportUpperBoundInclusive()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html" title="class in org.apache.commons.math3.distribution">LogNormalDistribution</a></dt>
<dd>
<div class="block">Whether or not the upper bound of support is in the domain of the density
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/NormalDistribution.html#isSupportUpperBoundInclusive()">isSupportUpperBoundInclusive()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/NormalDistribution.html" title="class in org.apache.commons.math3.distribution">NormalDistribution</a></dt>
<dd>
<div class="block">Whether or not the upper bound of support is in the domain of the density
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ParetoDistribution.html#isSupportUpperBoundInclusive()">isSupportUpperBoundInclusive()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ParetoDistribution.html" title="class in org.apache.commons.math3.distribution">ParetoDistribution</a></dt>
<dd>
<div class="block">Whether or not the upper bound of support is in the domain of the density
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/RealDistribution.html#isSupportUpperBoundInclusive()">isSupportUpperBoundInclusive()</a></span> - Method in interface org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/RealDistribution.html" title="interface in org.apache.commons.math3.distribution">RealDistribution</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>to be removed in 4.0</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/TDistribution.html#isSupportUpperBoundInclusive()">isSupportUpperBoundInclusive()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/TDistribution.html" title="class in org.apache.commons.math3.distribution">TDistribution</a></dt>
<dd>
<div class="block">Whether or not the upper bound of support is in the domain of the density
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/TriangularDistribution.html#isSupportUpperBoundInclusive()">isSupportUpperBoundInclusive()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/TriangularDistribution.html" title="class in org.apache.commons.math3.distribution">TriangularDistribution</a></dt>
<dd>
<div class="block">Whether or not the upper bound of support is in the domain of the density
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html#isSupportUpperBoundInclusive()">isSupportUpperBoundInclusive()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html" title="class in org.apache.commons.math3.distribution">UniformRealDistribution</a></dt>
<dd>
<div class="block">Whether or not the upper bound of support is in the domain of the density
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/WeibullDistribution.html#isSupportUpperBoundInclusive()">isSupportUpperBoundInclusive()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/WeibullDistribution.html" title="class in org.apache.commons.math3.distribution">WeibullDistribution</a></dt>
<dd>
<div class="block">Whether or not the upper bound of support is in the domain of the density
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#isSupportUpperBoundInclusive()">isSupportUpperBoundInclusive()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random">EmpiricalDistribution</a></dt>
<dd>
<div class="block">Whether or not the upper bound of support is in the domain of the density
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#isSymmetric(org.apache.commons.math3.linear.RealMatrix, double)">isSymmetric(RealMatrix, double)</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Checks whether a matrix is symmetric.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealLinearOperator.html#isTransposable()">isTransposable()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealLinearOperator.html" title="class in org.apache.commons.math3.linear">RealLinearOperator</a></dt>
<dd>
<div class="block">Returns <code>true</code> if this operator supports
 <a href="./org/apache/commons/math3/linear/RealLinearOperator.html#operateTranspose(org.apache.commons.math3.linear.RealVector)"><code>RealLinearOperator.operateTranspose(RealVector)</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Quaternion.html#isUnitQuaternion(double)">isUnitQuaternion(double)</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex">Quaternion</a></dt>
<dd>
<div class="block">Checks whether the instance is a unit quaternion within a given
 tolerance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/BicubicSplineInterpolatingFunction.html#isValidPoint(double, double)">isValidPoint(double, double)</a></span> - Method in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/BicubicSplineInterpolatingFunction.html" title="class in org.apache.commons.math3.analysis.interpolation">BicubicSplineInterpolatingFunction</a></dt>
<dd>
<div class="block">Indicates whether a point is within the interpolation range.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialSplineFunction.html#isValidPoint(double)">isValidPoint(double)</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialSplineFunction.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialSplineFunction</a></dt>
<dd>
<div class="block">Indicates whether a point is within the interpolation range.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#isZero()">isZero()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Check if instance is equal to zero.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/AbstractSimplex.html#iterate(org.apache.commons.math3.analysis.MultivariateFunction, java.util.Comparator)">iterate(MultivariateFunction, Comparator&lt;PointValuePair&gt;)</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/AbstractSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">AbstractSimplex</a></dt>
<dd>
<div class="block">Compute the next simplex of the algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/MultiDirectionalSimplex.html#iterate(org.apache.commons.math3.analysis.MultivariateFunction, java.util.Comparator)">iterate(MultivariateFunction, Comparator&lt;PointValuePair&gt;)</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/MultiDirectionalSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">MultiDirectionalSimplex</a></dt>
<dd>
<div class="block">Compute the next simplex of the algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/NelderMeadSimplex.html#iterate(org.apache.commons.math3.analysis.MultivariateFunction, java.util.Comparator)">iterate(MultivariateFunction, Comparator&lt;PointValuePair&gt;)</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/NelderMeadSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">NelderMeadSimplex</a></dt>
<dd>
<div class="block">Compute the next simplex of the algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/AbstractSimplex.html#iterate(org.apache.commons.math3.analysis.MultivariateFunction, java.util.Comparator)">iterate(MultivariateFunction, Comparator&lt;PointValuePair&gt;)</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/AbstractSimplex.html" title="class in org.apache.commons.math3.optimization.direct">AbstractSimplex</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Compute the next simplex of the algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/MultiDirectionalSimplex.html#iterate(org.apache.commons.math3.analysis.MultivariateFunction, java.util.Comparator)">iterate(MultivariateFunction, Comparator&lt;PointValuePair&gt;)</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/MultiDirectionalSimplex.html" title="class in org.apache.commons.math3.optimization.direct">MultiDirectionalSimplex</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Compute the next simplex of the algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/NelderMeadSimplex.html#iterate(org.apache.commons.math3.analysis.MultivariateFunction, java.util.Comparator)">iterate(MultivariateFunction, Comparator&lt;PointValuePair&gt;)</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/NelderMeadSimplex.html" title="class in org.apache.commons.math3.optimization.direct">NelderMeadSimplex</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Compute the next simplex of the algorithm.</div>
</dd>
<dt><a href="./org/apache/commons/math3/util/IterationEvent.html" title="class in org.apache.commons.math3.util"><span class="strong">IterationEvent</span></a> - Class in <a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a></dt>
<dd>
<div class="block">The root class from which all events occurring while running an
 <a href="./org/apache/commons/math3/util/IterationManager.html" title="class in org.apache.commons.math3.util"><code>IterationManager</code></a> should be derived.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/IterationEvent.html#IterationEvent(java.lang.Object, int)">IterationEvent(Object, int)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/IterationEvent.html" title="class in org.apache.commons.math3.util">IterationEvent</a></dt>
<dd>
<div class="block">Creates a new instance of this class.</div>
</dd>
<dt><a href="./org/apache/commons/math3/util/IterationListener.html" title="interface in org.apache.commons.math3.util"><span class="strong">IterationListener</span></a> - Interface in <a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a></dt>
<dd>
<div class="block">The listener interface for receiving events occurring in an iterative
 algorithm.</div>
</dd>
<dt><a href="./org/apache/commons/math3/util/IterationManager.html" title="class in org.apache.commons.math3.util"><span class="strong">IterationManager</span></a> - Class in <a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a></dt>
<dd>
<div class="block">This abstract class provides a general framework for managing iterative
 algorithms.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/IterationManager.html#IterationManager(int)">IterationManager(int)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/IterationManager.html" title="class in org.apache.commons.math3.util">IterationManager</a></dt>
<dd>
<div class="block">Creates a new instance of this class.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/IterationManager.html#IterationManager(int, org.apache.commons.math3.util.Incrementor.MaxCountExceededCallback)">IterationManager(int, Incrementor.MaxCountExceededCallback)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/IterationManager.html" title="class in org.apache.commons.math3.util">IterationManager</a></dt>
<dd>
<div class="block">Creates a new instance of this class.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/IterationListener.html#iterationPerformed(org.apache.commons.math3.util.IterationEvent)">iterationPerformed(IterationEvent)</a></span> - Method in interface org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/IterationListener.html" title="interface in org.apache.commons.math3.util">IterationListener</a></dt>
<dd>
<div class="block">Invoked each time an iteration is completed (in the main iteration loop).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html#iterations">iterations</a></span> - Variable in class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">BaseAbstractUnivariateIntegrator</a></dt>
<dd>
<div class="block">The iteration count.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/BaseOptimizer.html#iterations">iterations</a></span> - Variable in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/BaseOptimizer.html" title="class in org.apache.commons.math3.optim">BaseOptimizer</a></dt>
<dd>
<div class="block">Iterations counter.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/IterationListener.html#iterationStarted(org.apache.commons.math3.util.IterationEvent)">iterationStarted(IterationEvent)</a></span> - Method in interface org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/IterationListener.html" title="interface in org.apache.commons.math3.util">IterationListener</a></dt>
<dd>
<div class="block">Invoked each time a new iteration is completed (in the main iteration
 loop).</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/integration/IterativeLegendreGaussIntegrator.html" title="class in org.apache.commons.math3.analysis.integration"><span class="strong">IterativeLegendreGaussIntegrator</span></a> - Class in <a href="./org/apache/commons/math3/analysis/integration/package-summary.html">org.apache.commons.math3.analysis.integration</a></dt>
<dd>
<div class="block">This algorithm divides the integration interval into equally-sized
 sub-interval and on each of them performs a
 <a href="http://mathworld.wolfram.com/Legendre-GaussQuadrature.html">
 Legendre-Gauss</a> quadrature.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/IterativeLegendreGaussIntegrator.html#IterativeLegendreGaussIntegrator(int, double, double, int, int)">IterativeLegendreGaussIntegrator(int, double, double, int, int)</a></span> - Constructor for class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/IterativeLegendreGaussIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">IterativeLegendreGaussIntegrator</a></dt>
<dd>
<div class="block">Builds an integrator with given accuracies and iterations counts.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/IterativeLegendreGaussIntegrator.html#IterativeLegendreGaussIntegrator(int, double, double)">IterativeLegendreGaussIntegrator(int, double, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/IterativeLegendreGaussIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">IterativeLegendreGaussIntegrator</a></dt>
<dd>
<div class="block">Builds an integrator with given accuracies.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/IterativeLegendreGaussIntegrator.html#IterativeLegendreGaussIntegrator(int, int, int)">IterativeLegendreGaussIntegrator(int, int, int)</a></span> - Constructor for class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/IterativeLegendreGaussIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">IterativeLegendreGaussIntegrator</a></dt>
<dd>
<div class="block">Builds an integrator with given iteration counts.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/IterativeLinearSolver.html" title="class in org.apache.commons.math3.linear"><span class="strong">IterativeLinearSolver</span></a> - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">This abstract class defines an iterative solver for the linear system A
 &middot; x = b.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/IterativeLinearSolver.html#IterativeLinearSolver(int)">IterativeLinearSolver(int)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/IterativeLinearSolver.html" title="class in org.apache.commons.math3.linear">IterativeLinearSolver</a></dt>
<dd>
<div class="block">Creates a new instance of this class, with default iteration manager.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/IterativeLinearSolver.html#IterativeLinearSolver(org.apache.commons.math3.util.IterationManager)">IterativeLinearSolver(IterationManager)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/IterativeLinearSolver.html" title="class in org.apache.commons.math3.linear">IterativeLinearSolver</a></dt>
<dd>
<div class="block">Creates a new instance of this class, with custom iteration manager.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/IterativeLinearSolverEvent.html" title="class in org.apache.commons.math3.linear"><span class="strong">IterativeLinearSolverEvent</span></a> - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">This is the base class for all events occurring during the iterations of a
 <a href="./org/apache/commons/math3/linear/IterativeLinearSolver.html" title="class in org.apache.commons.math3.linear"><code>IterativeLinearSolver</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/IterativeLinearSolverEvent.html#IterativeLinearSolverEvent(java.lang.Object, int)">IterativeLinearSolverEvent(Object, int)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/IterativeLinearSolverEvent.html" title="class in org.apache.commons.math3.linear">IterativeLinearSolverEvent</a></dt>
<dd>
<div class="block">Creates a new instance of this class.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/ListPopulation.html#iterator()">iterator()</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/ListPopulation.html" title="class in org.apache.commons.math3.genetics">ListPopulation</a></dt>
<dd>
<div class="block">Returns an iterator over the unmodifiable list of chromosomes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html#iterator()">iterator()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">IntervalsSet</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/ArcsSet.html#iterator()">iterator()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/ArcsSet.html" title="class in org.apache.commons.math3.geometry.spherical.oned">ArcsSet</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#iterator()">iterator()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Generic dense iterator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/Network.html#iterator()">iterator()</a></span> - Method in class org.apache.commons.math3.ml.neuralnet.<a href="./org/apache/commons/math3/ml/neuralnet/Network.html" title="class in org.apache.commons.math3.ml.neuralnet">Network</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Combinations.html#iterator()">iterator()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Combinations.html" title="class in org.apache.commons.math3.util">Combinations</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MultidimensionalCounter.html#iterator()">iterator()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MultidimensionalCounter.html" title="class in org.apache.commons.math3.util">MultidimensionalCounter</a></dt>
<dd>
<div class="block">Create an iterator over this counter.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.html#iterator()">iterator()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.html" title="class in org.apache.commons.math3.util">OpenIntToDoubleHashMap</a></dt>
<dd>
<div class="block">Get an iterator over map elements.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.html#iterator()">iterator()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.html" title="class in org.apache.commons.math3.util">OpenIntToFieldHashMap</a></dt>
<dd>
<div class="block">Get an iterator over map elements.</div>
</dd>
</dl>
<a name="_J_">
<!--   -->
</a>
<h2 class="title">J</h2>
<dl>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Quaternion.html#J">J</a></span> - Static variable in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex">Quaternion</a></dt>
<dd>
<div class="block">j</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/DifferentiableMultivariateVectorFunction.html#jacobian()">jacobian()</a></span> - Method in interface org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/DifferentiableMultivariateVectorFunction.html" title="interface in org.apache.commons.math3.analysis">DifferentiableMultivariateVectorFunction</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Returns the jacobian function.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/differentiation/JacobianFunction.html" title="class in org.apache.commons.math3.analysis.differentiation"><span class="strong">JacobianFunction</span></a> - Class in <a href="./org/apache/commons/math3/analysis/differentiation/package-summary.html">org.apache.commons.math3.analysis.differentiation</a></dt>
<dd>
<div class="block">Class representing the Jacobian of a multivariate vector function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/JacobianFunction.html#JacobianFunction(org.apache.commons.math3.analysis.differentiation.MultivariateDifferentiableVectorFunction)">JacobianFunction(MultivariateDifferentiableVectorFunction)</a></span> - Constructor for class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/JacobianFunction.html" title="class in org.apache.commons.math3.analysis.differentiation">JacobianFunction</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/JacobianMatrices.html" title="class in org.apache.commons.math3.ode"><span class="strong">JacobianMatrices</span></a> - Class in <a href="./org/apache/commons/math3/ode/package-summary.html">org.apache.commons.math3.ode</a></dt>
<dd>
<div class="block">This class defines a set of <a href="./org/apache/commons/math3/ode/SecondaryEquations.html" title="interface in org.apache.commons.math3.ode"><code>secondary equations</code></a> to
 compute the Jacobian matrices with respect to the initial state vector and, if
 any, to some parameters of the primary ODE set.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/JacobianMatrices.html#JacobianMatrices(org.apache.commons.math3.ode.FirstOrderDifferentialEquations, double[], java.lang.String...)">JacobianMatrices(FirstOrderDifferentialEquations, double[], String...)</a></span> - Constructor for class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/JacobianMatrices.html" title="class in org.apache.commons.math3.ode">JacobianMatrices</a></dt>
<dd>
<div class="block">Simple constructor for a secondary equations set computing Jacobian matrices.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/JacobianMatrices.html#JacobianMatrices(org.apache.commons.math3.ode.MainStateJacobianProvider, java.lang.String...)">JacobianMatrices(MainStateJacobianProvider, String...)</a></span> - Constructor for class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/JacobianMatrices.html" title="class in org.apache.commons.math3.ode">JacobianMatrices</a></dt>
<dd>
<div class="block">Simple constructor for a secondary equations set computing Jacobian matrices.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/JacobianMatrices.MismatchedEquations.html" title="class in org.apache.commons.math3.ode"><span class="strong">JacobianMatrices.MismatchedEquations</span></a> - Exception in <a href="./org/apache/commons/math3/ode/package-summary.html">org.apache.commons.math3.ode</a></dt>
<dd>
<div class="block">Special exception for equations mismatch.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/JacobianMatrices.MismatchedEquations.html#JacobianMatrices.MismatchedEquations()">JacobianMatrices.MismatchedEquations()</a></span> - Constructor for exception org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/JacobianMatrices.MismatchedEquations.html" title="class in org.apache.commons.math3.ode">JacobianMatrices.MismatchedEquations</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/vector/JacobianMultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector"><span class="strong">JacobianMultivariateVectorOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optim/nonlinear/vector/package-summary.html">org.apache.commons.math3.optim.nonlinear.vector</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>All classes and interfaces in this package are deprecated.
 The optimizers that were provided here were moved to the
 <a href="./org/apache/commons/math3/fitting/leastsquares/package-summary.html"><code>org.apache.commons.math3.fitting.leastsquares</code></a> package
 (cf. MATH-1008).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/JacobianMultivariateVectorOptimizer.html#JacobianMultivariateVectorOptimizer(org.apache.commons.math3.optim.ConvergenceChecker)">JacobianMultivariateVectorOptimizer(ConvergenceChecker&lt;PointVectorValuePair&gt;)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.vector.<a href="./org/apache/commons/math3/optim/nonlinear/vector/JacobianMultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector">JacobianMultivariateVectorOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/linear/JacobiPreconditioner.html" title="class in org.apache.commons.math3.linear"><span class="strong">JacobiPreconditioner</span></a> - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">This class implements the standard Jacobi (diagonal) preconditioner.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/JacobiPreconditioner.html#JacobiPreconditioner(double[], boolean)">JacobiPreconditioner(double[], boolean)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/JacobiPreconditioner.html" title="class in org.apache.commons.math3.linear">JacobiPreconditioner</a></dt>
<dd>
<div class="block">Creates a new instance of this class.</div>
</dd>
<dt><a href="./org/apache/commons/math3/random/JDKRandomGenerator.html" title="class in org.apache.commons.math3.random"><span class="strong">JDKRandomGenerator</span></a> - Class in <a href="./org/apache/commons/math3/random/package-summary.html">org.apache.commons.math3.random</a></dt>
<dd>
<div class="block">Extension of <code>java.util.Random</code> to implement
 <a href="./org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random"><code>RandomGenerator</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/JDKRandomGenerator.html#JDKRandomGenerator()">JDKRandomGenerator()</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/JDKRandomGenerator.html" title="class in org.apache.commons.math3.random">JDKRandomGenerator</a></dt>
<dd>&nbsp;</dd>
</dl>
<a name="_K_">
<!--   -->
</a>
<h2 class="title">K</h2>
<dl>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Quaternion.html#K">K</a></span> - Static variable in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex">Quaternion</a></dt>
<dd>
<div class="block">k</div>
</dd>
<dt><a href="./org/apache/commons/math3/filter/KalmanFilter.html" title="class in org.apache.commons.math3.filter"><span class="strong">KalmanFilter</span></a> - Class in <a href="./org/apache/commons/math3/filter/package-summary.html">org.apache.commons.math3.filter</a></dt>
<dd>
<div class="block">Implementation of a Kalman filter to estimate the state <i>x<sub>k</sub></i>
 of a discrete-time controlled process that is governed by the linear
 stochastic difference equation:</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/filter/KalmanFilter.html#KalmanFilter(org.apache.commons.math3.filter.ProcessModel, org.apache.commons.math3.filter.MeasurementModel)">KalmanFilter(ProcessModel, MeasurementModel)</a></span> - Constructor for class org.apache.commons.math3.filter.<a href="./org/apache/commons/math3/filter/KalmanFilter.html" title="class in org.apache.commons.math3.filter">KalmanFilter</a></dt>
<dd>
<div class="block">Creates a new Kalman filter with the given process and measurement models.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/correlation/KendallsCorrelation.html" title="class in org.apache.commons.math3.stat.correlation"><span class="strong">KendallsCorrelation</span></a> - Class in <a href="./org/apache/commons/math3/stat/correlation/package-summary.html">org.apache.commons.math3.stat.correlation</a></dt>
<dd>
<div class="block">Implementation of Kendall's Tau-b rank correlation</a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/KendallsCorrelation.html#KendallsCorrelation()">KendallsCorrelation()</a></span> - Constructor for class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/KendallsCorrelation.html" title="class in org.apache.commons.math3.stat.correlation">KendallsCorrelation</a></dt>
<dd>
<div class="block">Create a KendallsCorrelation instance without data.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/KendallsCorrelation.html#KendallsCorrelation(double[][])">KendallsCorrelation(double[][])</a></span> - Constructor for class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/KendallsCorrelation.html" title="class in org.apache.commons.math3.stat.correlation">KendallsCorrelation</a></dt>
<dd>
<div class="block">Create a KendallsCorrelation from a rectangular array
 whose columns represent values of variables to be correlated.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/KendallsCorrelation.html#KendallsCorrelation(org.apache.commons.math3.linear.RealMatrix)">KendallsCorrelation(RealMatrix)</a></span> - Constructor for class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/KendallsCorrelation.html" title="class in org.apache.commons.math3.stat.correlation">KendallsCorrelation</a></dt>
<dd>
<div class="block">Create a KendallsCorrelation from a RealMatrix whose columns
 represent variables to be correlated.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.Iterator.html#key()">key()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.Iterator.html" title="class in org.apache.commons.math3.util">OpenIntToDoubleHashMap.Iterator</a></dt>
<dd>
<div class="block">Get the key of current entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.Iterator.html#key()">key()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.Iterator.html" title="class in org.apache.commons.math3.util">OpenIntToFieldHashMap.Iterator</a></dt>
<dd>
<div class="block">Get the key of current entry.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/clustering/KMeansPlusPlusClusterer.html" title="class in org.apache.commons.math3.ml.clustering"><span class="strong">KMeansPlusPlusClusterer</span></a>&lt;<a href="./org/apache/commons/math3/ml/clustering/KMeansPlusPlusClusterer.html" title="type parameter in KMeansPlusPlusClusterer">T</a> extends <a href="./org/apache/commons/math3/ml/clustering/Clusterable.html" title="interface in org.apache.commons.math3.ml.clustering">Clusterable</a>&gt; - Class in <a href="./org/apache/commons/math3/ml/clustering/package-summary.html">org.apache.commons.math3.ml.clustering</a></dt>
<dd>
<div class="block">Clustering algorithm based on David Arthur and Sergei Vassilvitski k-means++ algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/KMeansPlusPlusClusterer.html#KMeansPlusPlusClusterer(int)">KMeansPlusPlusClusterer(int)</a></span> - Constructor for class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/KMeansPlusPlusClusterer.html" title="class in org.apache.commons.math3.ml.clustering">KMeansPlusPlusClusterer</a></dt>
<dd>
<div class="block">Build a clusterer.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/KMeansPlusPlusClusterer.html#KMeansPlusPlusClusterer(int, int)">KMeansPlusPlusClusterer(int, int)</a></span> - Constructor for class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/KMeansPlusPlusClusterer.html" title="class in org.apache.commons.math3.ml.clustering">KMeansPlusPlusClusterer</a></dt>
<dd>
<div class="block">Build a clusterer.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/KMeansPlusPlusClusterer.html#KMeansPlusPlusClusterer(int, int, org.apache.commons.math3.ml.distance.DistanceMeasure)">KMeansPlusPlusClusterer(int, int, DistanceMeasure)</a></span> - Constructor for class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/KMeansPlusPlusClusterer.html" title="class in org.apache.commons.math3.ml.clustering">KMeansPlusPlusClusterer</a></dt>
<dd>
<div class="block">Build a clusterer.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/KMeansPlusPlusClusterer.html#KMeansPlusPlusClusterer(int, int, org.apache.commons.math3.ml.distance.DistanceMeasure, org.apache.commons.math3.random.RandomGenerator)">KMeansPlusPlusClusterer(int, int, DistanceMeasure, RandomGenerator)</a></span> - Constructor for class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/KMeansPlusPlusClusterer.html" title="class in org.apache.commons.math3.ml.clustering">KMeansPlusPlusClusterer</a></dt>
<dd>
<div class="block">Build a clusterer.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/KMeansPlusPlusClusterer.html#KMeansPlusPlusClusterer(int, int, org.apache.commons.math3.ml.distance.DistanceMeasure, org.apache.commons.math3.random.RandomGenerator, org.apache.commons.math3.ml.clustering.KMeansPlusPlusClusterer.EmptyClusterStrategy)">KMeansPlusPlusClusterer(int, int, DistanceMeasure, RandomGenerator, KMeansPlusPlusClusterer.EmptyClusterStrategy)</a></span> - Constructor for class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/KMeansPlusPlusClusterer.html" title="class in org.apache.commons.math3.ml.clustering">KMeansPlusPlusClusterer</a></dt>
<dd>
<div class="block">Build a clusterer.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/clustering/KMeansPlusPlusClusterer.html" title="class in org.apache.commons.math3.stat.clustering"><span class="strong">KMeansPlusPlusClusterer</span></a>&lt;<a href="./org/apache/commons/math3/stat/clustering/KMeansPlusPlusClusterer.html" title="type parameter in KMeansPlusPlusClusterer">T</a> extends <a href="./org/apache/commons/math3/stat/clustering/Clusterable.html" title="interface in org.apache.commons.math3.stat.clustering">Clusterable</a>&lt;<a href="./org/apache/commons/math3/stat/clustering/KMeansPlusPlusClusterer.html" title="type parameter in KMeansPlusPlusClusterer">T</a>&gt;&gt; - Class in <a href="./org/apache/commons/math3/stat/clustering/package-summary.html">org.apache.commons.math3.stat.clustering</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.2 (to be removed in 4.0),
 use <a href="./org/apache/commons/math3/ml/clustering/KMeansPlusPlusClusterer.html" title="class in org.apache.commons.math3.ml.clustering"><code>KMeansPlusPlusClusterer</code></a> instead</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/clustering/KMeansPlusPlusClusterer.html#KMeansPlusPlusClusterer(java.util.Random)">KMeansPlusPlusClusterer(Random)</a></span> - Constructor for class org.apache.commons.math3.stat.clustering.<a href="./org/apache/commons/math3/stat/clustering/KMeansPlusPlusClusterer.html" title="class in org.apache.commons.math3.stat.clustering">KMeansPlusPlusClusterer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a clusterer.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/clustering/KMeansPlusPlusClusterer.html#KMeansPlusPlusClusterer(java.util.Random, org.apache.commons.math3.stat.clustering.KMeansPlusPlusClusterer.EmptyClusterStrategy)">KMeansPlusPlusClusterer(Random, KMeansPlusPlusClusterer.EmptyClusterStrategy)</a></span> - Constructor for class org.apache.commons.math3.stat.clustering.<a href="./org/apache/commons/math3/stat/clustering/KMeansPlusPlusClusterer.html" title="class in org.apache.commons.math3.stat.clustering">KMeansPlusPlusClusterer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a clusterer.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/clustering/KMeansPlusPlusClusterer.EmptyClusterStrategy.html" title="enum in org.apache.commons.math3.ml.clustering"><span class="strong">KMeansPlusPlusClusterer.EmptyClusterStrategy</span></a> - Enum in <a href="./org/apache/commons/math3/ml/clustering/package-summary.html">org.apache.commons.math3.ml.clustering</a></dt>
<dd>
<div class="block">Strategies to use for replacing an empty cluster.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/clustering/KMeansPlusPlusClusterer.EmptyClusterStrategy.html" title="enum in org.apache.commons.math3.stat.clustering"><span class="strong">KMeansPlusPlusClusterer.EmptyClusterStrategy</span></a> - Enum in <a href="./org/apache/commons/math3/stat/clustering/package-summary.html">org.apache.commons.math3.stat.clustering</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Strategies to use for replacing an empty cluster.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/neuralnet/sofm/KohonenTrainingTask.html" title="class in org.apache.commons.math3.ml.neuralnet.sofm"><span class="strong">KohonenTrainingTask</span></a> - Class in <a href="./org/apache/commons/math3/ml/neuralnet/sofm/package-summary.html">org.apache.commons.math3.ml.neuralnet.sofm</a></dt>
<dd>
<div class="block">Trainer for Kohonen's Self-Organizing Map.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/sofm/KohonenTrainingTask.html#KohonenTrainingTask(org.apache.commons.math3.ml.neuralnet.Network, java.util.Iterator, org.apache.commons.math3.ml.neuralnet.sofm.KohonenUpdateAction)">KohonenTrainingTask(Network, Iterator&lt;double[]&gt;, KohonenUpdateAction)</a></span> - Constructor for class org.apache.commons.math3.ml.neuralnet.sofm.<a href="./org/apache/commons/math3/ml/neuralnet/sofm/KohonenTrainingTask.html" title="class in org.apache.commons.math3.ml.neuralnet.sofm">KohonenTrainingTask</a></dt>
<dd>
<div class="block">Creates a (sequential) trainer for the given network.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/neuralnet/sofm/KohonenUpdateAction.html" title="class in org.apache.commons.math3.ml.neuralnet.sofm"><span class="strong">KohonenUpdateAction</span></a> - Class in <a href="./org/apache/commons/math3/ml/neuralnet/sofm/package-summary.html">org.apache.commons.math3.ml.neuralnet.sofm</a></dt>
<dd>
<div class="block">Update formula for <a href="http://en.wikipedia.org/wiki/Kohonen">
 Kohonen's Self-Organizing Map</a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/sofm/KohonenUpdateAction.html#KohonenUpdateAction(org.apache.commons.math3.ml.distance.DistanceMeasure, org.apache.commons.math3.ml.neuralnet.sofm.LearningFactorFunction, org.apache.commons.math3.ml.neuralnet.sofm.NeighbourhoodSizeFunction)">KohonenUpdateAction(DistanceMeasure, LearningFactorFunction, NeighbourhoodSizeFunction)</a></span> - Constructor for class org.apache.commons.math3.ml.neuralnet.sofm.<a href="./org/apache/commons/math3/ml/neuralnet/sofm/KohonenUpdateAction.html" title="class in org.apache.commons.math3.ml.neuralnet.sofm">KohonenUpdateAction</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/distribution/KolmogorovSmirnovDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">KolmogorovSmirnovDistribution</span></a> - Class in <a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>to be removed in version 4.0 -
  use <a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html" title="class in org.apache.commons.math3.stat.inference"><code>KolmogorovSmirnovTest</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/KolmogorovSmirnovDistribution.html#KolmogorovSmirnovDistribution(int)">KolmogorovSmirnovDistribution(int)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/KolmogorovSmirnovDistribution.html" title="class in org.apache.commons.math3.distribution">KolmogorovSmirnovDistribution</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html#kolmogorovSmirnovStatistic(org.apache.commons.math3.distribution.RealDistribution, double[])">kolmogorovSmirnovStatistic(RealDistribution, double[])</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html" title="class in org.apache.commons.math3.stat.inference">KolmogorovSmirnovTest</a></dt>
<dd>
<div class="block">Computes the one-sample Kolmogorov-Smirnov test statistic, \(D_n=\sup_x |F_n(x)-F(x)|\) where
 \(F\) is the distribution (cdf) function associated with <code>distribution</code>, \(n\) is the
 length of <code>data</code> and \(F_n\) is the empirical distribution that puts mass \(1/n\) at
 each of the values in <code>data</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html#kolmogorovSmirnovStatistic(double[], double[])">kolmogorovSmirnovStatistic(double[], double[])</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html" title="class in org.apache.commons.math3.stat.inference">KolmogorovSmirnovTest</a></dt>
<dd>
<div class="block">Computes the two-sample Kolmogorov-Smirnov test statistic, \(D_{n,m}=\sup_x |F_n(x)-F_m(x)|\)
 where \(n\) is the length of <code>x</code>, \(m\) is the length of <code>y</code>, \(F_n\) is the
 empirical distribution that puts mass \(1/n\) at each of the values in <code>x</code> and \(F_m\)
 is the empirical distribution of the <code>y</code> values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#kolmogorovSmirnovStatistic(org.apache.commons.math3.distribution.RealDistribution, double[])">kolmogorovSmirnovStatistic(RealDistribution, double[])</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#kolmogorovSmirnovStatistic(double[], double[])">kolmogorovSmirnovStatistic(double[], double[])</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html" title="class in org.apache.commons.math3.stat.inference"><span class="strong">KolmogorovSmirnovTest</span></a> - Class in <a href="./org/apache/commons/math3/stat/inference/package-summary.html">org.apache.commons.math3.stat.inference</a></dt>
<dd>
<div class="block">Implementation of the <a href="http://en.wikipedia.org/wiki/Kolmogorov-Smirnov_test">
 Kolmogorov-Smirnov (K-S) test</a> for equality of continuous distributions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html#KolmogorovSmirnovTest()">KolmogorovSmirnovTest()</a></span> - Constructor for class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html" title="class in org.apache.commons.math3.stat.inference">KolmogorovSmirnovTest</a></dt>
<dd>
<div class="block">Construct a KolmogorovSmirnovTest instance with a default random data generator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html#KolmogorovSmirnovTest(org.apache.commons.math3.random.RandomGenerator)">KolmogorovSmirnovTest(RandomGenerator)</a></span> - Constructor for class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html" title="class in org.apache.commons.math3.stat.inference">KolmogorovSmirnovTest</a></dt>
<dd>
<div class="block">Construct a KolmogorovSmirnovTest with the provided random data generator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html#kolmogorovSmirnovTest(org.apache.commons.math3.distribution.RealDistribution, double[], boolean)">kolmogorovSmirnovTest(RealDistribution, double[], boolean)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html" title="class in org.apache.commons.math3.stat.inference">KolmogorovSmirnovTest</a></dt>
<dd>
<div class="block">Computes the <i>p-value</i>, or <i>observed significance level</i>, of a one-sample <a
 href="http://en.wikipedia.org/wiki/Kolmogorov-Smirnov_test"> Kolmogorov-Smirnov test</a>
 evaluating the null hypothesis that <code>data</code> conforms to <code>distribution</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html#kolmogorovSmirnovTest(double[], double[], boolean)">kolmogorovSmirnovTest(double[], double[], boolean)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html" title="class in org.apache.commons.math3.stat.inference">KolmogorovSmirnovTest</a></dt>
<dd>
<div class="block">Computes the <i>p-value</i>, or <i>observed significance level</i>, of a two-sample <a
 href="http://en.wikipedia.org/wiki/Kolmogorov-Smirnov_test"> Kolmogorov-Smirnov test</a>
 evaluating the null hypothesis that <code>x</code> and <code>y</code> are samples drawn from the same
 probability distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html#kolmogorovSmirnovTest(double[], double[])">kolmogorovSmirnovTest(double[], double[])</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html" title="class in org.apache.commons.math3.stat.inference">KolmogorovSmirnovTest</a></dt>
<dd>
<div class="block">Computes the <i>p-value</i>, or <i>observed significance level</i>, of a two-sample <a
 href="http://en.wikipedia.org/wiki/Kolmogorov-Smirnov_test"> Kolmogorov-Smirnov test</a>
 evaluating the null hypothesis that <code>x</code> and <code>y</code> are samples drawn from the same
 probability distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html#kolmogorovSmirnovTest(org.apache.commons.math3.distribution.RealDistribution, double[])">kolmogorovSmirnovTest(RealDistribution, double[])</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html" title="class in org.apache.commons.math3.stat.inference">KolmogorovSmirnovTest</a></dt>
<dd>
<div class="block">Computes the <i>p-value</i>, or <i>observed significance level</i>, of a one-sample <a
 href="http://en.wikipedia.org/wiki/Kolmogorov-Smirnov_test"> Kolmogorov-Smirnov test</a>
 evaluating the null hypothesis that <code>data</code> conforms to <code>distribution</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html#kolmogorovSmirnovTest(org.apache.commons.math3.distribution.RealDistribution, double[], double)">kolmogorovSmirnovTest(RealDistribution, double[], double)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html" title="class in org.apache.commons.math3.stat.inference">KolmogorovSmirnovTest</a></dt>
<dd>
<div class="block">Performs a <a href="http://en.wikipedia.org/wiki/Kolmogorov-Smirnov_test"> Kolmogorov-Smirnov
 test</a> evaluating the null hypothesis that <code>data</code> conforms to <code>distribution</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#kolmogorovSmirnovTest(org.apache.commons.math3.distribution.RealDistribution, double[])">kolmogorovSmirnovTest(RealDistribution, double[])</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#kolmogorovSmirnovTest(org.apache.commons.math3.distribution.RealDistribution, double[], boolean)">kolmogorovSmirnovTest(RealDistribution, double[], boolean)</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#kolmogorovSmirnovTest(org.apache.commons.math3.distribution.RealDistribution, double[], double)">kolmogorovSmirnovTest(RealDistribution, double[], double)</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#kolmogorovSmirnovTest(double[], double[])">kolmogorovSmirnovTest(double[], double[])</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#kolmogorovSmirnovTest(double[], double[], boolean)">kolmogorovSmirnovTest(double[], double[], boolean)</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html#KS_SUM_CAUCHY_CRITERION">KS_SUM_CAUCHY_CRITERION</a></span> - Static variable in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html" title="class in org.apache.commons.math3.stat.inference">KolmogorovSmirnovTest</a></dt>
<dd>
<div class="block">Convergence criterion for <a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html#ksSum(double, double, int)"><code>KolmogorovSmirnovTest.ksSum(double, double, int)</code></a></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html#ksSum(double, double, int)">ksSum(double, double, int)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html" title="class in org.apache.commons.math3.stat.inference">KolmogorovSmirnovTest</a></dt>
<dd>
<div class="block">Computes \( 1 + 2 \sum_{i=1}^\infty (-1)^i e^{-2 i^2 t^2} \) stopping when successive partial
 sums are within <code>tolerance</code> of one another, or when <code>maxIterations</code> partial sums
 have been computed.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/moment/Kurtosis.html" title="class in org.apache.commons.math3.stat.descriptive.moment"><span class="strong">Kurtosis</span></a> - Class in <a href="./org/apache/commons/math3/stat/descriptive/moment/package-summary.html">org.apache.commons.math3.stat.descriptive.moment</a></dt>
<dd>
<div class="block">Computes the Kurtosis of the available values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Kurtosis.html#Kurtosis()">Kurtosis()</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Kurtosis.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Kurtosis</a></dt>
<dd>
<div class="block">Construct a Kurtosis</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Kurtosis.html#Kurtosis(org.apache.commons.math3.stat.descriptive.moment.FourthMoment)">Kurtosis(FourthMoment)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Kurtosis.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Kurtosis</a></dt>
<dd>
<div class="block">Construct a Kurtosis from an external moment</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Kurtosis.html#Kurtosis(org.apache.commons.math3.stat.descriptive.moment.Kurtosis)">Kurtosis(Kurtosis)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Kurtosis.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Kurtosis</a></dt>
<dd>
<div class="block">Copy constructor, creates a new <code>Kurtosis</code> identical
 to the <code>original</code></div>
</dd>
</dl>
<a name="_L_">
<!--   -->
</a>
<h2 class="title">L</h2>
<dl>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/LaguerreSolver.html#laguerre(double, double, double, double)">laguerre(double, double, double, double)</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/LaguerreSolver.html" title="class in org.apache.commons.math3.analysis.solvers">LaguerreSolver</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>This method should not be part of the public API: It will
 be made private in version 4.0.</i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/solvers/LaguerreSolver.html" title="class in org.apache.commons.math3.analysis.solvers"><span class="strong">LaguerreSolver</span></a> - Class in <a href="./org/apache/commons/math3/analysis/solvers/package-summary.html">org.apache.commons.math3.analysis.solvers</a></dt>
<dd>
<div class="block">Implements the <a href="http://mathworld.wolfram.com/LaguerresMethod.html">
 Laguerre's Method</a> for root finding of real coefficient polynomials.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/LaguerreSolver.html#LaguerreSolver()">LaguerreSolver()</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/LaguerreSolver.html" title="class in org.apache.commons.math3.analysis.solvers">LaguerreSolver</a></dt>
<dd>
<div class="block">Construct a solver with default accuracy (1e-6).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/LaguerreSolver.html#LaguerreSolver(double)">LaguerreSolver(double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/LaguerreSolver.html" title="class in org.apache.commons.math3.analysis.solvers">LaguerreSolver</a></dt>
<dd>
<div class="block">Construct a solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/LaguerreSolver.html#LaguerreSolver(double, double)">LaguerreSolver(double, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/LaguerreSolver.html" title="class in org.apache.commons.math3.analysis.solvers">LaguerreSolver</a></dt>
<dd>
<div class="block">Construct a solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/LaguerreSolver.html#LaguerreSolver(double, double, double)">LaguerreSolver(double, double, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/LaguerreSolver.html" title="class in org.apache.commons.math3.analysis.solvers">LaguerreSolver</a></dt>
<dd>
<div class="block">Construct a solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/special/Gamma.html#lanczos(double)">lanczos(double)</a></span> - Static method in class org.apache.commons.math3.special.<a href="./org/apache/commons/math3/special/Gamma.html" title="class in org.apache.commons.math3.special">Gamma</a></dt>
<dd>
<div class="block">
 Returns the Lanczos approximation used to compute the gamma function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/special/Gamma.html#LANCZOS_G">LANCZOS_G</a></span> - Static variable in class org.apache.commons.math3.special.<a href="./org/apache/commons/math3/special/Gamma.html" title="class in org.apache.commons.math3.special">Gamma</a></dt>
<dd>
<div class="block">The value of the <code>g</code> constant in the Lanczos approximation, see
 <a href="./org/apache/commons/math3/special/Gamma.html#lanczos(double)"><code>Gamma.lanczos(double)</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html#LARGE_SAMPLE_PRODUCT">LARGE_SAMPLE_PRODUCT</a></span> - Static variable in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html" title="class in org.apache.commons.math3.stat.inference">KolmogorovSmirnovTest</a></dt>
<dd>
<div class="block">When product of sample sizes exceeds this value, 2-sample K-S test uses asymptotic
 distribution for strict inequality p-value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/StepNormalizerBounds.html#lastIncluded()">lastIncluded()</a></span> - Method in enum org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/StepNormalizerBounds.html" title="enum in org.apache.commons.math3.ode.sampling">StepNormalizerBounds</a></dt>
<dd>
<div class="block">Returns a value indicating whether the last point should be passed
 to the underlying fixed step size step handler.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ArithmeticUtils.html#lcm(int, int)">lcm(int, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ArithmeticUtils.html" title="class in org.apache.commons.math3.util">ArithmeticUtils</a></dt>
<dd>
<div class="block">
 Returns the least common multiple of the absolute value of two numbers,
 using the formula <code>lcm(a,b) = (a / gcd(a,b)) * b</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ArithmeticUtils.html#lcm(long, long)">lcm(long, long)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ArithmeticUtils.html" title="class in org.apache.commons.math3.util">ArithmeticUtils</a></dt>
<dd>
<div class="block">
 Returns the least common multiple of the absolute value of two numbers,
 using the formula <code>lcm(a,b) = (a / gcd(a,b)) * b</code>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/neuralnet/sofm/LearningFactorFunction.html" title="interface in org.apache.commons.math3.ml.neuralnet.sofm"><span class="strong">LearningFactorFunction</span></a> - Interface in <a href="./org/apache/commons/math3/ml/neuralnet/sofm/package-summary.html">org.apache.commons.math3.ml.neuralnet.sofm</a></dt>
<dd>
<div class="block">Provides the learning rate as a function of the number of calls
 already performed during the learning task.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/neuralnet/sofm/LearningFactorFunctionFactory.html" title="class in org.apache.commons.math3.ml.neuralnet.sofm"><span class="strong">LearningFactorFunctionFactory</span></a> - Class in <a href="./org/apache/commons/math3/ml/neuralnet/sofm/package-summary.html">org.apache.commons.math3.ml.neuralnet.sofm</a></dt>
<dd>
<div class="block">Factory for creating instances of <a href="./org/apache/commons/math3/ml/neuralnet/sofm/LearningFactorFunction.html" title="interface in org.apache.commons.math3.ml.neuralnet.sofm"><code>LearningFactorFunction</code></a>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresAdapter.html" title="class in org.apache.commons.math3.fitting.leastsquares"><span class="strong">LeastSquaresAdapter</span></a> - Class in <a href="./org/apache/commons/math3/fitting/leastsquares/package-summary.html">org.apache.commons.math3.fitting.leastsquares</a></dt>
<dd>
<div class="block">An adapter that delegates to another implementation of <a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.html" title="interface in org.apache.commons.math3.fitting.leastsquares"><code>LeastSquaresProblem</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresAdapter.html#LeastSquaresAdapter(org.apache.commons.math3.fitting.leastsquares.LeastSquaresProblem)">LeastSquaresAdapter(LeastSquaresProblem)</a></span> - Constructor for class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresAdapter.html" title="class in org.apache.commons.math3.fitting.leastsquares">LeastSquaresAdapter</a></dt>
<dd>
<div class="block">Delegate the <a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.html" title="interface in org.apache.commons.math3.fitting.leastsquares"><code>LeastSquaresProblem</code></a> interface to the given implementation.</div>
</dd>
<dt><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresBuilder.html" title="class in org.apache.commons.math3.fitting.leastsquares"><span class="strong">LeastSquaresBuilder</span></a> - Class in <a href="./org/apache/commons/math3/fitting/leastsquares/package-summary.html">org.apache.commons.math3.fitting.leastsquares</a></dt>
<dd>
<div class="block">A mutable builder for <a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.html" title="interface in org.apache.commons.math3.fitting.leastsquares"><code>LeastSquaresProblem</code></a>s.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresBuilder.html#LeastSquaresBuilder()">LeastSquaresBuilder()</a></span> - Constructor for class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresBuilder.html" title="class in org.apache.commons.math3.fitting.leastsquares">LeastSquaresBuilder</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/scalar/LeastSquaresConverter.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar"><span class="strong">LeastSquaresConverter</span></a> - Class in <a href="./org/apache/commons/math3/optim/nonlinear/scalar/package-summary.html">org.apache.commons.math3.optim.nonlinear.scalar</a></dt>
<dd>
<div class="block">This class converts
 <a href="./org/apache/commons/math3/analysis/MultivariateVectorFunction.html" title="interface in org.apache.commons.math3.analysis"><code>vectorial objective functions</code></a> to
 <a href="./org/apache/commons/math3/analysis/MultivariateFunction.html" title="interface in org.apache.commons.math3.analysis"><code>scalar objective functions</code></a>
 when the goal is to minimize them.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/LeastSquaresConverter.html#LeastSquaresConverter(org.apache.commons.math3.analysis.MultivariateVectorFunction, double[])">LeastSquaresConverter(MultivariateVectorFunction, double[])</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/LeastSquaresConverter.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar">LeastSquaresConverter</a></dt>
<dd>
<div class="block">Builds a simple converter for uncorrelated residuals with identical
 weights.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/LeastSquaresConverter.html#LeastSquaresConverter(org.apache.commons.math3.analysis.MultivariateVectorFunction, double[], double[])">LeastSquaresConverter(MultivariateVectorFunction, double[], double[])</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/LeastSquaresConverter.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar">LeastSquaresConverter</a></dt>
<dd>
<div class="block">Builds a simple converter for uncorrelated residuals with the
 specified weights.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/LeastSquaresConverter.html#LeastSquaresConverter(org.apache.commons.math3.analysis.MultivariateVectorFunction, double[], org.apache.commons.math3.linear.RealMatrix)">LeastSquaresConverter(MultivariateVectorFunction, double[], RealMatrix)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/LeastSquaresConverter.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar">LeastSquaresConverter</a></dt>
<dd>
<div class="block">Builds a simple converter for correlated residuals with the
 specified weights.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/LeastSquaresConverter.html" title="class in org.apache.commons.math3.optimization"><span class="strong">LeastSquaresConverter</span></a> - Class in <a href="./org/apache/commons/math3/optimization/package-summary.html">org.apache.commons.math3.optimization</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/LeastSquaresConverter.html#LeastSquaresConverter(org.apache.commons.math3.analysis.MultivariateVectorFunction, double[])">LeastSquaresConverter(MultivariateVectorFunction, double[])</a></span> - Constructor for class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/LeastSquaresConverter.html" title="class in org.apache.commons.math3.optimization">LeastSquaresConverter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a simple converter for uncorrelated residuals with the same weight.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/LeastSquaresConverter.html#LeastSquaresConverter(org.apache.commons.math3.analysis.MultivariateVectorFunction, double[], double[])">LeastSquaresConverter(MultivariateVectorFunction, double[], double[])</a></span> - Constructor for class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/LeastSquaresConverter.html" title="class in org.apache.commons.math3.optimization">LeastSquaresConverter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a simple converter for uncorrelated residuals with the specific weights.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/LeastSquaresConverter.html#LeastSquaresConverter(org.apache.commons.math3.analysis.MultivariateVectorFunction, double[], org.apache.commons.math3.linear.RealMatrix)">LeastSquaresConverter(MultivariateVectorFunction, double[], RealMatrix)</a></span> - Constructor for class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/LeastSquaresConverter.html" title="class in org.apache.commons.math3.optimization">LeastSquaresConverter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a simple converter for correlated residuals with the specific weights.</div>
</dd>
<dt><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresFactory.html" title="class in org.apache.commons.math3.fitting.leastsquares"><span class="strong">LeastSquaresFactory</span></a> - Class in <a href="./org/apache/commons/math3/fitting/leastsquares/package-summary.html">org.apache.commons.math3.fitting.leastsquares</a></dt>
<dd>
<div class="block">A Factory for creating <a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.html" title="interface in org.apache.commons.math3.fitting.leastsquares"><code>LeastSquaresProblem</code></a>s.</div>
</dd>
<dt><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresOptimizer.html" title="interface in org.apache.commons.math3.fitting.leastsquares"><span class="strong">LeastSquaresOptimizer</span></a> - Interface in <a href="./org/apache/commons/math3/fitting/leastsquares/package-summary.html">org.apache.commons.math3.fitting.leastsquares</a></dt>
<dd>
<div class="block">An algorithm that can be applied to a non-linear least squares problem.</div>
</dd>
<dt><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresOptimizer.Optimum.html" title="interface in org.apache.commons.math3.fitting.leastsquares"><span class="strong">LeastSquaresOptimizer.Optimum</span></a> - Interface in <a href="./org/apache/commons/math3/fitting/leastsquares/package-summary.html">org.apache.commons.math3.fitting.leastsquares</a></dt>
<dd>
<div class="block">The optimum found by the optimizer.</div>
</dd>
<dt><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.html" title="interface in org.apache.commons.math3.fitting.leastsquares"><span class="strong">LeastSquaresProblem</span></a> - Interface in <a href="./org/apache/commons/math3/fitting/leastsquares/package-summary.html">org.apache.commons.math3.fitting.leastsquares</a></dt>
<dd>
<div class="block">The data necessary to define a non-linear least squares problem.</div>
</dd>
<dt><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.Evaluation.html" title="interface in org.apache.commons.math3.fitting.leastsquares"><span class="strong">LeastSquaresProblem.Evaluation</span></a> - Interface in <a href="./org/apache/commons/math3/fitting/leastsquares/package-summary.html">org.apache.commons.math3.fitting.leastsquares</a></dt>
<dd>
<div class="block">An evaluation of a <a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.html" title="interface in org.apache.commons.math3.fitting.leastsquares"><code>LeastSquaresProblem</code></a> at a particular point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/gauss/GaussIntegratorFactory.html#legendre(int)">legendre(int)</a></span> - Method in class org.apache.commons.math3.analysis.integration.gauss.<a href="./org/apache/commons/math3/analysis/integration/gauss/GaussIntegratorFactory.html" title="class in org.apache.commons.math3.analysis.integration.gauss">GaussIntegratorFactory</a></dt>
<dd>
<div class="block">Creates a Gauss-Legendre integrator of the given order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/gauss/GaussIntegratorFactory.html#legendre(int, double, double)">legendre(int, double, double)</a></span> - Method in class org.apache.commons.math3.analysis.integration.gauss.<a href="./org/apache/commons/math3/analysis/integration/gauss/GaussIntegratorFactory.html" title="class in org.apache.commons.math3.analysis.integration.gauss">GaussIntegratorFactory</a></dt>
<dd>
<div class="block">Creates a Gauss-Legendre integrator of the given order.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/integration/LegendreGaussIntegrator.html" title="class in org.apache.commons.math3.analysis.integration"><span class="strong">LegendreGaussIntegrator</span></a> - Class in <a href="./org/apache/commons/math3/analysis/integration/package-summary.html">org.apache.commons.math3.analysis.integration</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0). Please use
 <a href="./org/apache/commons/math3/analysis/integration/IterativeLegendreGaussIntegrator.html" title="class in org.apache.commons.math3.analysis.integration"><code>IterativeLegendreGaussIntegrator</code></a> instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/LegendreGaussIntegrator.html#LegendreGaussIntegrator(int, double, double, int, int)">LegendreGaussIntegrator(int, double, double, int, int)</a></span> - Constructor for class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/LegendreGaussIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">LegendreGaussIntegrator</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a Legendre-Gauss integrator with given accuracies and iterations counts.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/LegendreGaussIntegrator.html#LegendreGaussIntegrator(int, double, double)">LegendreGaussIntegrator(int, double, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/LegendreGaussIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">LegendreGaussIntegrator</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a Legendre-Gauss integrator with given accuracies.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/LegendreGaussIntegrator.html#LegendreGaussIntegrator(int, int, int)">LegendreGaussIntegrator(int, int, int)</a></span> - Constructor for class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/LegendreGaussIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">LegendreGaussIntegrator</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a Legendre-Gauss integrator with given iteration counts.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/gauss/GaussIntegratorFactory.html#legendreHighPrecision(int)">legendreHighPrecision(int)</a></span> - Method in class org.apache.commons.math3.analysis.integration.gauss.<a href="./org/apache/commons/math3/analysis/integration/gauss/GaussIntegratorFactory.html" title="class in org.apache.commons.math3.analysis.integration.gauss">GaussIntegratorFactory</a></dt>
<dd>
<div class="block">Creates a Gauss-Legendre integrator of the given order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/gauss/GaussIntegratorFactory.html#legendreHighPrecision(int, double, double)">legendreHighPrecision(int, double, double)</a></span> - Method in class org.apache.commons.math3.analysis.integration.gauss.<a href="./org/apache/commons/math3/analysis/integration/gauss/GaussIntegratorFactory.html" title="class in org.apache.commons.math3.analysis.integration.gauss">GaussIntegratorFactory</a></dt>
<dd>
<div class="block">Creates an integrator of the given order, and whose call to the
 <a href="./org/apache/commons/math3/analysis/integration/gauss/GaussIntegrator.html#integrate(org.apache.commons.math3.analysis.UnivariateFunction)"><code>integrate</code></a> method will perform an integration on the given interval.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/integration/gauss/LegendreHighPrecisionRuleFactory.html" title="class in org.apache.commons.math3.analysis.integration.gauss"><span class="strong">LegendreHighPrecisionRuleFactory</span></a> - Class in <a href="./org/apache/commons/math3/analysis/integration/gauss/package-summary.html">org.apache.commons.math3.analysis.integration.gauss</a></dt>
<dd>
<div class="block">Factory that creates Gauss-type quadrature rule using Legendre polynomials.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/gauss/LegendreHighPrecisionRuleFactory.html#LegendreHighPrecisionRuleFactory()">LegendreHighPrecisionRuleFactory()</a></span> - Constructor for class org.apache.commons.math3.analysis.integration.gauss.<a href="./org/apache/commons/math3/analysis/integration/gauss/LegendreHighPrecisionRuleFactory.html" title="class in org.apache.commons.math3.analysis.integration.gauss">LegendreHighPrecisionRuleFactory</a></dt>
<dd>
<div class="block">Default precision is <a href="http://docs.oracle.com/javase/6/docs/api/java/math/MathContext.html?is-external=true#DECIMAL128" title="class or interface in java.math"><code>DECIMAL128</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/gauss/LegendreHighPrecisionRuleFactory.html#LegendreHighPrecisionRuleFactory(java.math.MathContext)">LegendreHighPrecisionRuleFactory(MathContext)</a></span> - Constructor for class org.apache.commons.math3.analysis.integration.gauss.<a href="./org/apache/commons/math3/analysis/integration/gauss/LegendreHighPrecisionRuleFactory.html" title="class in org.apache.commons.math3.analysis.integration.gauss">LegendreHighPrecisionRuleFactory</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/analysis/integration/gauss/LegendreRuleFactory.html" title="class in org.apache.commons.math3.analysis.integration.gauss"><span class="strong">LegendreRuleFactory</span></a> - Class in <a href="./org/apache/commons/math3/analysis/integration/gauss/package-summary.html">org.apache.commons.math3.analysis.integration.gauss</a></dt>
<dd>
<div class="block">Factory that creates Gauss-type quadrature rule using Legendre polynomials.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/gauss/LegendreRuleFactory.html#LegendreRuleFactory()">LegendreRuleFactory()</a></span> - Constructor for class org.apache.commons.math3.analysis.integration.gauss.<a href="./org/apache/commons/math3/analysis/integration/gauss/LegendreRuleFactory.html" title="class in org.apache.commons.math3.analysis.integration.gauss">LegendreRuleFactory</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#lessThan(org.apache.commons.math3.dfp.Dfp)">lessThan(Dfp)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Check if instance is less than x.</div>
</dd>
<dt><a href="./org/apache/commons/math3/fitting/leastsquares/LevenbergMarquardtOptimizer.html" title="class in org.apache.commons.math3.fitting.leastsquares"><span class="strong">LevenbergMarquardtOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/fitting/leastsquares/package-summary.html">org.apache.commons.math3.fitting.leastsquares</a></dt>
<dd>
<div class="block">This class solves a least-squares problem using the Levenberg-Marquardt
 algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LevenbergMarquardtOptimizer.html#LevenbergMarquardtOptimizer()">LevenbergMarquardtOptimizer()</a></span> - Constructor for class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LevenbergMarquardtOptimizer.html" title="class in org.apache.commons.math3.fitting.leastsquares">LevenbergMarquardtOptimizer</a></dt>
<dd>
<div class="block">Default constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LevenbergMarquardtOptimizer.html#LevenbergMarquardtOptimizer(double, double, double, double, double)">LevenbergMarquardtOptimizer(double, double, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LevenbergMarquardtOptimizer.html" title="class in org.apache.commons.math3.fitting.leastsquares">LevenbergMarquardtOptimizer</a></dt>
<dd>
<div class="block">Construct an instance with all parameters specified.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/LevenbergMarquardtOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector.jacobian"><span class="strong">LevenbergMarquardtOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/package-summary.html">org.apache.commons.math3.optim.nonlinear.vector.jacobian</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>All classes and interfaces in this package are deprecated.
 The optimizers that were provided here were moved to the
 <a href="./org/apache/commons/math3/fitting/leastsquares/package-summary.html"><code>org.apache.commons.math3.fitting.leastsquares</code></a> package
 (cf. MATH-1008).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/LevenbergMarquardtOptimizer.html#LevenbergMarquardtOptimizer()">LevenbergMarquardtOptimizer()</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.vector.jacobian.<a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/LevenbergMarquardtOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector.jacobian">LevenbergMarquardtOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build an optimizer for least squares problems with default values
 for all the tuning parameters (see the <a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/LevenbergMarquardtOptimizer.html#LevenbergMarquardtOptimizer(double, double, double, double, double)"><code>other contructor</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/LevenbergMarquardtOptimizer.html#LevenbergMarquardtOptimizer(org.apache.commons.math3.optim.ConvergenceChecker)">LevenbergMarquardtOptimizer(ConvergenceChecker&lt;PointVectorValuePair&gt;)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.vector.jacobian.<a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/LevenbergMarquardtOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector.jacobian">LevenbergMarquardtOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Constructor that allows the specification of a custom convergence
 checker.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/LevenbergMarquardtOptimizer.html#LevenbergMarquardtOptimizer(double, org.apache.commons.math3.optim.ConvergenceChecker, double, double, double, double)">LevenbergMarquardtOptimizer(double, ConvergenceChecker&lt;PointVectorValuePair&gt;, double, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.vector.jacobian.<a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/LevenbergMarquardtOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector.jacobian">LevenbergMarquardtOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Constructor that allows the specification of a custom convergence
 checker, in addition to the standard ones.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/LevenbergMarquardtOptimizer.html#LevenbergMarquardtOptimizer(double, double, double)">LevenbergMarquardtOptimizer(double, double, double)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.vector.jacobian.<a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/LevenbergMarquardtOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector.jacobian">LevenbergMarquardtOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build an optimizer for least squares problems with default values
 for some of the tuning parameters (see the <a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/LevenbergMarquardtOptimizer.html#LevenbergMarquardtOptimizer(double, double, double, double, double)"><code>other contructor</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/LevenbergMarquardtOptimizer.html#LevenbergMarquardtOptimizer(double, double, double, double, double)">LevenbergMarquardtOptimizer(double, double, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.vector.jacobian.<a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/LevenbergMarquardtOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector.jacobian">LevenbergMarquardtOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">The arguments control the behaviour of the default convergence checking
 procedure.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/general/LevenbergMarquardtOptimizer.html" title="class in org.apache.commons.math3.optimization.general"><span class="strong">LevenbergMarquardtOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optimization/general/package-summary.html">org.apache.commons.math3.optimization.general</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/LevenbergMarquardtOptimizer.html#LevenbergMarquardtOptimizer()">LevenbergMarquardtOptimizer()</a></span> - Constructor for class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/LevenbergMarquardtOptimizer.html" title="class in org.apache.commons.math3.optimization.general">LevenbergMarquardtOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build an optimizer for least squares problems with default values
 for all the tuning parameters (see the <a href="./org/apache/commons/math3/optimization/general/LevenbergMarquardtOptimizer.html#LevenbergMarquardtOptimizer(double, double, double, double, double)"><code>other contructor</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/LevenbergMarquardtOptimizer.html#LevenbergMarquardtOptimizer(org.apache.commons.math3.optimization.ConvergenceChecker)">LevenbergMarquardtOptimizer(ConvergenceChecker&lt;PointVectorValuePair&gt;)</a></span> - Constructor for class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/LevenbergMarquardtOptimizer.html" title="class in org.apache.commons.math3.optimization.general">LevenbergMarquardtOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Constructor that allows the specification of a custom convergence
 checker.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/LevenbergMarquardtOptimizer.html#LevenbergMarquardtOptimizer(double, org.apache.commons.math3.optimization.ConvergenceChecker, double, double, double, double)">LevenbergMarquardtOptimizer(double, ConvergenceChecker&lt;PointVectorValuePair&gt;, double, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/LevenbergMarquardtOptimizer.html" title="class in org.apache.commons.math3.optimization.general">LevenbergMarquardtOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Constructor that allows the specification of a custom convergence
 checker, in addition to the standard ones.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/LevenbergMarquardtOptimizer.html#LevenbergMarquardtOptimizer(double, double, double)">LevenbergMarquardtOptimizer(double, double, double)</a></span> - Constructor for class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/LevenbergMarquardtOptimizer.html" title="class in org.apache.commons.math3.optimization.general">LevenbergMarquardtOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build an optimizer for least squares problems with default values
 for some of the tuning parameters (see the <a href="./org/apache/commons/math3/optimization/general/LevenbergMarquardtOptimizer.html#LevenbergMarquardtOptimizer(double, double, double, double, double)"><code>other contructor</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/LevenbergMarquardtOptimizer.html#LevenbergMarquardtOptimizer(double, double, double, double, double)">LevenbergMarquardtOptimizer(double, double, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/LevenbergMarquardtOptimizer.html" title="class in org.apache.commons.math3.optimization.general">LevenbergMarquardtOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">The arguments control the behaviour of the default convergence checking
 procedure.</div>
</dd>
<dt><a href="./org/apache/commons/math3/distribution/LevyDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">LevyDistribution</span></a> - Class in <a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a></dt>
<dd>
<div class="block">This class implements the <a href="http://en.wikipedia.org/wiki/L%C3%A9vy_distribution">
 L&eacute;vy distribution</a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LevyDistribution.html#LevyDistribution(org.apache.commons.math3.random.RandomGenerator, double, double)">LevyDistribution(RandomGenerator, double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LevyDistribution.html" title="class in org.apache.commons.math3.distribution">LevyDistribution</a></dt>
<dd>
<div class="block">Creates a LevyDistribution.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/spherical/oned/LimitAngle.html" title="class in org.apache.commons.math3.geometry.spherical.oned"><span class="strong">LimitAngle</span></a> - Class in <a href="./org/apache/commons/math3/geometry/spherical/oned/package-summary.html">org.apache.commons.math3.geometry.spherical.oned</a></dt>
<dd>
<div class="block">This class represents a 1D oriented hyperplane on the circle.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/LimitAngle.html#LimitAngle(org.apache.commons.math3.geometry.spherical.oned.S1Point, boolean, double)">LimitAngle(S1Point, boolean, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/LimitAngle.html" title="class in org.apache.commons.math3.geometry.spherical.oned">LimitAngle</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.threed"><span class="strong">Line</span></a> - Class in <a href="./org/apache/commons/math3/geometry/euclidean/threed/package-summary.html">org.apache.commons.math3.geometry.euclidean.threed</a></dt>
<dd>
<div class="block">The class represent lines in a three dimensional space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html#Line(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D, double)">Line(Vector3D, Vector3D, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Line</a></dt>
<dd>
<div class="block">Build a line from two points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html#Line(org.apache.commons.math3.geometry.euclidean.threed.Line)">Line(Line)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Line</a></dt>
<dd>
<div class="block">Copy constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html#Line(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">Line(Vector3D, Vector3D)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Line</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.3, replaced with <a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html#Line(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D, double)"><code>Line.Line(Vector3D, Vector3D, double)</code></a></i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod"><span class="strong">Line</span></a> - Class in <a href="./org/apache/commons/math3/geometry/euclidean/twod/package-summary.html">org.apache.commons.math3.geometry.euclidean.twod</a></dt>
<dd>
<div class="block">This class represents an oriented line in the 2D plane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#Line(org.apache.commons.math3.geometry.euclidean.twod.Vector2D, org.apache.commons.math3.geometry.euclidean.twod.Vector2D, double)">Line(Vector2D, Vector2D, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Line</a></dt>
<dd>
<div class="block">Build a line from two points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#Line(org.apache.commons.math3.geometry.euclidean.twod.Vector2D, double, double)">Line(Vector2D, double, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Line</a></dt>
<dd>
<div class="block">Build a line from a point and an angle.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#Line(org.apache.commons.math3.geometry.euclidean.twod.Vector2D, org.apache.commons.math3.geometry.euclidean.twod.Vector2D)">Line(Vector2D, Vector2D)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Line</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.3, replaced with <a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#Line(org.apache.commons.math3.geometry.euclidean.twod.Vector2D, org.apache.commons.math3.geometry.euclidean.twod.Vector2D, double)"><code>Line.Line(Vector2D, Vector2D, double)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#Line(org.apache.commons.math3.geometry.euclidean.twod.Vector2D, double)">Line(Vector2D, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Line</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.3, replaced with <a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#Line(org.apache.commons.math3.geometry.euclidean.twod.Vector2D, double, double)"><code>Line.Line(Vector2D, double, double)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#Line(org.apache.commons.math3.geometry.euclidean.twod.Line)">Line(Line)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Line</a></dt>
<dd>
<div class="block">Copy constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#linearCombination(org.apache.commons.math3.analysis.differentiation.DerivativeStructure[], org.apache.commons.math3.analysis.differentiation.DerivativeStructure[])">linearCombination(DerivativeStructure[], DerivativeStructure[])</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#linearCombination(double[], org.apache.commons.math3.analysis.differentiation.DerivativeStructure[])">linearCombination(double[], DerivativeStructure[])</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#linearCombination(org.apache.commons.math3.analysis.differentiation.DerivativeStructure, org.apache.commons.math3.analysis.differentiation.DerivativeStructure, org.apache.commons.math3.analysis.differentiation.DerivativeStructure, org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">linearCombination(DerivativeStructure, DerivativeStructure, DerivativeStructure, DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#linearCombination(double, org.apache.commons.math3.analysis.differentiation.DerivativeStructure, double, org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">linearCombination(double, DerivativeStructure, double, DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#linearCombination(org.apache.commons.math3.analysis.differentiation.DerivativeStructure, org.apache.commons.math3.analysis.differentiation.DerivativeStructure, org.apache.commons.math3.analysis.differentiation.DerivativeStructure, org.apache.commons.math3.analysis.differentiation.DerivativeStructure, org.apache.commons.math3.analysis.differentiation.DerivativeStructure, org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">linearCombination(DerivativeStructure, DerivativeStructure, DerivativeStructure, DerivativeStructure, DerivativeStructure, DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#linearCombination(double, org.apache.commons.math3.analysis.differentiation.DerivativeStructure, double, org.apache.commons.math3.analysis.differentiation.DerivativeStructure, double, org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">linearCombination(double, DerivativeStructure, double, DerivativeStructure, double, DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#linearCombination(org.apache.commons.math3.analysis.differentiation.DerivativeStructure, org.apache.commons.math3.analysis.differentiation.DerivativeStructure, org.apache.commons.math3.analysis.differentiation.DerivativeStructure, org.apache.commons.math3.analysis.differentiation.DerivativeStructure, org.apache.commons.math3.analysis.differentiation.DerivativeStructure, org.apache.commons.math3.analysis.differentiation.DerivativeStructure, org.apache.commons.math3.analysis.differentiation.DerivativeStructure, org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">linearCombination(DerivativeStructure, DerivativeStructure, DerivativeStructure, DerivativeStructure, DerivativeStructure, DerivativeStructure, DerivativeStructure, DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#linearCombination(double, org.apache.commons.math3.analysis.differentiation.DerivativeStructure, double, org.apache.commons.math3.analysis.differentiation.DerivativeStructure, double, org.apache.commons.math3.analysis.differentiation.DerivativeStructure, double, org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">linearCombination(double, DerivativeStructure, double, DerivativeStructure, double, DerivativeStructure, double, DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#linearCombination(double, double[], int, double, double[], int, double[], int)">linearCombination(double, double[], int, double, double[], int, double[], int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Compute linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#linearCombination(double, double[], int, double, double[], int, double, double[], int, double[], int)">linearCombination(double, double[], int, double, double[], int, double, double[], int, double[], int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Compute linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#linearCombination(double, double[], int, double, double[], int, double, double[], int, double, double[], int, double[], int)">linearCombination(double, double[], int, double, double[], int, double, double[], int, double, double[], int, double[], int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Compute linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#linearCombination(org.apache.commons.math3.analysis.differentiation.SparseGradient[], org.apache.commons.math3.analysis.differentiation.SparseGradient[])">linearCombination(SparseGradient[], SparseGradient[])</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#linearCombination(double[], org.apache.commons.math3.analysis.differentiation.SparseGradient[])">linearCombination(double[], SparseGradient[])</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#linearCombination(org.apache.commons.math3.analysis.differentiation.SparseGradient, org.apache.commons.math3.analysis.differentiation.SparseGradient, org.apache.commons.math3.analysis.differentiation.SparseGradient, org.apache.commons.math3.analysis.differentiation.SparseGradient)">linearCombination(SparseGradient, SparseGradient, SparseGradient, SparseGradient)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#linearCombination(double, org.apache.commons.math3.analysis.differentiation.SparseGradient, double, org.apache.commons.math3.analysis.differentiation.SparseGradient)">linearCombination(double, SparseGradient, double, SparseGradient)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#linearCombination(org.apache.commons.math3.analysis.differentiation.SparseGradient, org.apache.commons.math3.analysis.differentiation.SparseGradient, org.apache.commons.math3.analysis.differentiation.SparseGradient, org.apache.commons.math3.analysis.differentiation.SparseGradient, org.apache.commons.math3.analysis.differentiation.SparseGradient, org.apache.commons.math3.analysis.differentiation.SparseGradient)">linearCombination(SparseGradient, SparseGradient, SparseGradient, SparseGradient, SparseGradient, SparseGradient)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#linearCombination(double, org.apache.commons.math3.analysis.differentiation.SparseGradient, double, org.apache.commons.math3.analysis.differentiation.SparseGradient, double, org.apache.commons.math3.analysis.differentiation.SparseGradient)">linearCombination(double, SparseGradient, double, SparseGradient, double, SparseGradient)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#linearCombination(org.apache.commons.math3.analysis.differentiation.SparseGradient, org.apache.commons.math3.analysis.differentiation.SparseGradient, org.apache.commons.math3.analysis.differentiation.SparseGradient, org.apache.commons.math3.analysis.differentiation.SparseGradient, org.apache.commons.math3.analysis.differentiation.SparseGradient, org.apache.commons.math3.analysis.differentiation.SparseGradient, org.apache.commons.math3.analysis.differentiation.SparseGradient, org.apache.commons.math3.analysis.differentiation.SparseGradient)">linearCombination(SparseGradient, SparseGradient, SparseGradient, SparseGradient, SparseGradient, SparseGradient, SparseGradient, SparseGradient)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#linearCombination(double, org.apache.commons.math3.analysis.differentiation.SparseGradient, double, org.apache.commons.math3.analysis.differentiation.SparseGradient, double, org.apache.commons.math3.analysis.differentiation.SparseGradient, double, org.apache.commons.math3.analysis.differentiation.SparseGradient)">linearCombination(double, SparseGradient, double, SparseGradient, double, SparseGradient, double, SparseGradient)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#linearCombination(org.apache.commons.math3.dfp.Dfp[], org.apache.commons.math3.dfp.Dfp[])">linearCombination(Dfp[], Dfp[])</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#linearCombination(double[], org.apache.commons.math3.dfp.Dfp[])">linearCombination(double[], Dfp[])</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#linearCombination(org.apache.commons.math3.dfp.Dfp, org.apache.commons.math3.dfp.Dfp, org.apache.commons.math3.dfp.Dfp, org.apache.commons.math3.dfp.Dfp)">linearCombination(Dfp, Dfp, Dfp, Dfp)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#linearCombination(double, org.apache.commons.math3.dfp.Dfp, double, org.apache.commons.math3.dfp.Dfp)">linearCombination(double, Dfp, double, Dfp)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#linearCombination(org.apache.commons.math3.dfp.Dfp, org.apache.commons.math3.dfp.Dfp, org.apache.commons.math3.dfp.Dfp, org.apache.commons.math3.dfp.Dfp, org.apache.commons.math3.dfp.Dfp, org.apache.commons.math3.dfp.Dfp)">linearCombination(Dfp, Dfp, Dfp, Dfp, Dfp, Dfp)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#linearCombination(double, org.apache.commons.math3.dfp.Dfp, double, org.apache.commons.math3.dfp.Dfp, double, org.apache.commons.math3.dfp.Dfp)">linearCombination(double, Dfp, double, Dfp, double, Dfp)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#linearCombination(org.apache.commons.math3.dfp.Dfp, org.apache.commons.math3.dfp.Dfp, org.apache.commons.math3.dfp.Dfp, org.apache.commons.math3.dfp.Dfp, org.apache.commons.math3.dfp.Dfp, org.apache.commons.math3.dfp.Dfp, org.apache.commons.math3.dfp.Dfp, org.apache.commons.math3.dfp.Dfp)">linearCombination(Dfp, Dfp, Dfp, Dfp, Dfp, Dfp, Dfp, Dfp)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#linearCombination(double, org.apache.commons.math3.dfp.Dfp, double, org.apache.commons.math3.dfp.Dfp, double, org.apache.commons.math3.dfp.Dfp, double, org.apache.commons.math3.dfp.Dfp)">linearCombination(double, Dfp, double, Dfp, double, Dfp, double, Dfp)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#linearCombination(T[], T[])">linearCombination(T[], T[])</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#linearCombination(double[], T[])">linearCombination(double[], T[])</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#linearCombination(T, T, T, T)">linearCombination(T, T, T, T)</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#linearCombination(double, T, double, T)">linearCombination(double, T, double, T)</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#linearCombination(T, T, T, T, T, T)">linearCombination(T, T, T, T, T, T)</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#linearCombination(double, T, double, T, double, T)">linearCombination(double, T, double, T, double, T)</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#linearCombination(T, T, T, T, T, T, T, T)">linearCombination(T, T, T, T, T, T, T, T)</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#linearCombination(double, T, double, T, double, T, double, T)">linearCombination(double, T, double, T, double, T, double, T)</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#linearCombination(org.apache.commons.math3.util.Decimal64[], org.apache.commons.math3.util.Decimal64[])">linearCombination(Decimal64[], Decimal64[])</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#linearCombination(double[], org.apache.commons.math3.util.Decimal64[])">linearCombination(double[], Decimal64[])</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#linearCombination(org.apache.commons.math3.util.Decimal64, org.apache.commons.math3.util.Decimal64, org.apache.commons.math3.util.Decimal64, org.apache.commons.math3.util.Decimal64)">linearCombination(Decimal64, Decimal64, Decimal64, Decimal64)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#linearCombination(double, org.apache.commons.math3.util.Decimal64, double, org.apache.commons.math3.util.Decimal64)">linearCombination(double, Decimal64, double, Decimal64)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#linearCombination(org.apache.commons.math3.util.Decimal64, org.apache.commons.math3.util.Decimal64, org.apache.commons.math3.util.Decimal64, org.apache.commons.math3.util.Decimal64, org.apache.commons.math3.util.Decimal64, org.apache.commons.math3.util.Decimal64)">linearCombination(Decimal64, Decimal64, Decimal64, Decimal64, Decimal64, Decimal64)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#linearCombination(double, org.apache.commons.math3.util.Decimal64, double, org.apache.commons.math3.util.Decimal64, double, org.apache.commons.math3.util.Decimal64)">linearCombination(double, Decimal64, double, Decimal64, double, Decimal64)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#linearCombination(org.apache.commons.math3.util.Decimal64, org.apache.commons.math3.util.Decimal64, org.apache.commons.math3.util.Decimal64, org.apache.commons.math3.util.Decimal64, org.apache.commons.math3.util.Decimal64, org.apache.commons.math3.util.Decimal64, org.apache.commons.math3.util.Decimal64, org.apache.commons.math3.util.Decimal64)">linearCombination(Decimal64, Decimal64, Decimal64, Decimal64, Decimal64, Decimal64, Decimal64, Decimal64)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#linearCombination(double, org.apache.commons.math3.util.Decimal64, double, org.apache.commons.math3.util.Decimal64, double, org.apache.commons.math3.util.Decimal64, double, org.apache.commons.math3.util.Decimal64)">linearCombination(double, Decimal64, double, Decimal64, double, Decimal64, double, Decimal64)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Compute a linear combination.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#linearCombination(double[], double[])">linearCombination(double[], double[])</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Compute a linear combination accurately.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#linearCombination(double, double, double, double)">linearCombination(double, double, double, double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Compute a linear combination accurately.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#linearCombination(double, double, double, double, double, double)">linearCombination(double, double, double, double, double, double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Compute a linear combination accurately.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#linearCombination(double, double, double, double, double, double, double, double)">linearCombination(double, double, double, double, double, double, double, double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Compute a linear combination accurately.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/linear/LinearConstraint.html" title="class in org.apache.commons.math3.optim.linear"><span class="strong">LinearConstraint</span></a> - Class in <a href="./org/apache/commons/math3/optim/linear/package-summary.html">org.apache.commons.math3.optim.linear</a></dt>
<dd>
<div class="block">A linear constraint for a linear optimization problem.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/LinearConstraint.html#LinearConstraint(double[], org.apache.commons.math3.optim.linear.Relationship, double)">LinearConstraint(double[], Relationship, double)</a></span> - Constructor for class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/LinearConstraint.html" title="class in org.apache.commons.math3.optim.linear">LinearConstraint</a></dt>
<dd>
<div class="block">Build a constraint involving a single linear equation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/LinearConstraint.html#LinearConstraint(org.apache.commons.math3.linear.RealVector, org.apache.commons.math3.optim.linear.Relationship, double)">LinearConstraint(RealVector, Relationship, double)</a></span> - Constructor for class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/LinearConstraint.html" title="class in org.apache.commons.math3.optim.linear">LinearConstraint</a></dt>
<dd>
<div class="block">Build a constraint involving a single linear equation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/LinearConstraint.html#LinearConstraint(double[], double, org.apache.commons.math3.optim.linear.Relationship, double[], double)">LinearConstraint(double[], double, Relationship, double[], double)</a></span> - Constructor for class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/LinearConstraint.html" title="class in org.apache.commons.math3.optim.linear">LinearConstraint</a></dt>
<dd>
<div class="block">Build a constraint involving two linear equations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/LinearConstraint.html#LinearConstraint(org.apache.commons.math3.linear.RealVector, double, org.apache.commons.math3.optim.linear.Relationship, org.apache.commons.math3.linear.RealVector, double)">LinearConstraint(RealVector, double, Relationship, RealVector, double)</a></span> - Constructor for class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/LinearConstraint.html" title="class in org.apache.commons.math3.optim.linear">LinearConstraint</a></dt>
<dd>
<div class="block">Build a constraint involving two linear equations.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/linear/LinearConstraint.html" title="class in org.apache.commons.math3.optimization.linear"><span class="strong">LinearConstraint</span></a> - Class in <a href="./org/apache/commons/math3/optimization/linear/package-summary.html">org.apache.commons.math3.optimization.linear</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/LinearConstraint.html#LinearConstraint(double[], org.apache.commons.math3.optimization.linear.Relationship, double)">LinearConstraint(double[], Relationship, double)</a></span> - Constructor for class org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/LinearConstraint.html" title="class in org.apache.commons.math3.optimization.linear">LinearConstraint</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a constraint involving a single linear equation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/LinearConstraint.html#LinearConstraint(org.apache.commons.math3.linear.RealVector, org.apache.commons.math3.optimization.linear.Relationship, double)">LinearConstraint(RealVector, Relationship, double)</a></span> - Constructor for class org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/LinearConstraint.html" title="class in org.apache.commons.math3.optimization.linear">LinearConstraint</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a constraint involving a single linear equation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/LinearConstraint.html#LinearConstraint(double[], double, org.apache.commons.math3.optimization.linear.Relationship, double[], double)">LinearConstraint(double[], double, Relationship, double[], double)</a></span> - Constructor for class org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/LinearConstraint.html" title="class in org.apache.commons.math3.optimization.linear">LinearConstraint</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a constraint involving two linear equations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/LinearConstraint.html#LinearConstraint(org.apache.commons.math3.linear.RealVector, double, org.apache.commons.math3.optimization.linear.Relationship, org.apache.commons.math3.linear.RealVector, double)">LinearConstraint(RealVector, double, Relationship, RealVector, double)</a></span> - Constructor for class org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/LinearConstraint.html" title="class in org.apache.commons.math3.optimization.linear">LinearConstraint</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a constraint involving two linear equations.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/linear/LinearConstraintSet.html" title="class in org.apache.commons.math3.optim.linear"><span class="strong">LinearConstraintSet</span></a> - Class in <a href="./org/apache/commons/math3/optim/linear/package-summary.html">org.apache.commons.math3.optim.linear</a></dt>
<dd>
<div class="block">Class that represents a set of <a href="./org/apache/commons/math3/optim/linear/LinearConstraint.html" title="class in org.apache.commons.math3.optim.linear"><code>linear constraints</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/LinearConstraintSet.html#LinearConstraintSet(org.apache.commons.math3.optim.linear.LinearConstraint...)">LinearConstraintSet(LinearConstraint...)</a></span> - Constructor for class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/LinearConstraintSet.html" title="class in org.apache.commons.math3.optim.linear">LinearConstraintSet</a></dt>
<dd>
<div class="block">Creates a set containing the given constraints.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/LinearConstraintSet.html#LinearConstraintSet(java.util.Collection)">LinearConstraintSet(Collection&lt;LinearConstraint&gt;)</a></span> - Constructor for class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/LinearConstraintSet.html" title="class in org.apache.commons.math3.optim.linear">LinearConstraintSet</a></dt>
<dd>
<div class="block">Creates a set containing the given constraints.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/interpolation/LinearInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation"><span class="strong">LinearInterpolator</span></a> - Class in <a href="./org/apache/commons/math3/analysis/interpolation/package-summary.html">org.apache.commons.math3.analysis.interpolation</a></dt>
<dd>
<div class="block">Implements a linear function for interpolation of real univariate functions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/LinearInterpolator.html#LinearInterpolator()">LinearInterpolator()</a></span> - Constructor for class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/LinearInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">LinearInterpolator</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optim/linear/LinearObjectiveFunction.html" title="class in org.apache.commons.math3.optim.linear"><span class="strong">LinearObjectiveFunction</span></a> - Class in <a href="./org/apache/commons/math3/optim/linear/package-summary.html">org.apache.commons.math3.optim.linear</a></dt>
<dd>
<div class="block">An objective function for a linear optimization problem.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/LinearObjectiveFunction.html#LinearObjectiveFunction(double[], double)">LinearObjectiveFunction(double[], double)</a></span> - Constructor for class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/LinearObjectiveFunction.html" title="class in org.apache.commons.math3.optim.linear">LinearObjectiveFunction</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/LinearObjectiveFunction.html#LinearObjectiveFunction(org.apache.commons.math3.linear.RealVector, double)">LinearObjectiveFunction(RealVector, double)</a></span> - Constructor for class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/LinearObjectiveFunction.html" title="class in org.apache.commons.math3.optim.linear">LinearObjectiveFunction</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optimization/linear/LinearObjectiveFunction.html" title="class in org.apache.commons.math3.optimization.linear"><span class="strong">LinearObjectiveFunction</span></a> - Class in <a href="./org/apache/commons/math3/optimization/linear/package-summary.html">org.apache.commons.math3.optimization.linear</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/LinearObjectiveFunction.html#LinearObjectiveFunction(double[], double)">LinearObjectiveFunction(double[], double)</a></span> - Constructor for class org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/LinearObjectiveFunction.html" title="class in org.apache.commons.math3.optimization.linear">LinearObjectiveFunction</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/LinearObjectiveFunction.html#LinearObjectiveFunction(org.apache.commons.math3.linear.RealVector, double)">LinearObjectiveFunction(RealVector, double)</a></span> - Constructor for class org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/LinearObjectiveFunction.html" title="class in org.apache.commons.math3.optimization.linear">LinearObjectiveFunction</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optim/linear/LinearOptimizer.html" title="class in org.apache.commons.math3.optim.linear"><span class="strong">LinearOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optim/linear/package-summary.html">org.apache.commons.math3.optim.linear</a></dt>
<dd>
<div class="block">Base class for implementing linear optimizers.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/LinearOptimizer.html#LinearOptimizer()">LinearOptimizer()</a></span> - Constructor for class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/LinearOptimizer.html" title="class in org.apache.commons.math3.optim.linear">LinearOptimizer</a></dt>
<dd>
<div class="block">Simple constructor with default settings.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/linear/LinearOptimizer.html" title="interface in org.apache.commons.math3.optimization.linear"><span class="strong">LinearOptimizer</span></a> - Interface in <a href="./org/apache/commons/math3/optimization/linear/package-summary.html">org.apache.commons.math3.optimization.linear</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/scalar/LineSearch.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar"><span class="strong">LineSearch</span></a> - Class in <a href="./org/apache/commons/math3/optim/nonlinear/scalar/package-summary.html">org.apache.commons.math3.optim.nonlinear.scalar</a></dt>
<dd>
<div class="block">Class for finding the minimum of the objective function along a given
 direction.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/LineSearch.html#LineSearch(org.apache.commons.math3.optim.nonlinear.scalar.MultivariateOptimizer, double, double, double)">LineSearch(MultivariateOptimizer, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/LineSearch.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar">LineSearch</a></dt>
<dd>
<div class="block">The <code>BrentOptimizer</code> default stopping criterion uses the
 tolerances to check the domain (point) values, not the function
 values.</div>
</dd>
<dt><a href="./org/apache/commons/math3/genetics/ListPopulation.html" title="class in org.apache.commons.math3.genetics"><span class="strong">ListPopulation</span></a> - Class in <a href="./org/apache/commons/math3/genetics/package-summary.html">org.apache.commons.math3.genetics</a></dt>
<dd>
<div class="block">Population of chromosomes represented by a <a href="http://docs.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util"><code>List</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/ListPopulation.html#ListPopulation(int)">ListPopulation(int)</a></span> - Constructor for class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/ListPopulation.html" title="class in org.apache.commons.math3.genetics">ListPopulation</a></dt>
<dd>
<div class="block">Creates a new ListPopulation instance and initializes its inner chromosome list.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/ListPopulation.html#ListPopulation(java.util.List, int)">ListPopulation(List&lt;Chromosome&gt;, int)</a></span> - Constructor for class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/ListPopulation.html" title="class in org.apache.commons.math3.genetics">ListPopulation</a></dt>
<dd>
<div class="block">Creates a new ListPopulation instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#load(double[])">load(double[])</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random">EmpiricalDistribution</a></dt>
<dd>
<div class="block">Computes the empirical distribution from the provided
 array of numbers.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#load(java.net.URL)">load(URL)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random">EmpiricalDistribution</a></dt>
<dd>
<div class="block">Computes the empirical distribution using data read from a URL.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#load(java.io.File)">load(File)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random">EmpiricalDistribution</a></dt>
<dd>
<div class="block">Computes the empirical distribution from the input file.</div>
</dd>
<dt><a href="./org/apache/commons/math3/exception/util/Localizable.html" title="interface in org.apache.commons.math3.exception.util"><span class="strong">Localizable</span></a> - Interface in <a href="./org/apache/commons/math3/exception/util/package-summary.html">org.apache.commons.math3.exception.util</a></dt>
<dd>
<div class="block">Interface for localizable strings.</div>
</dd>
<dt><a href="./org/apache/commons/math3/exception/util/LocalizedFormats.html" title="enum in org.apache.commons.math3.exception.util"><span class="strong">LocalizedFormats</span></a> - Enum in <a href="./org/apache/commons/math3/exception/util/package-summary.html">org.apache.commons.math3.exception.util</a></dt>
<dd>
<div class="block">Enumeration for localized messages formats used in exceptions messages.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/interpolation/LoessInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation"><span class="strong">LoessInterpolator</span></a> - Class in <a href="./org/apache/commons/math3/analysis/interpolation/package-summary.html">org.apache.commons.math3.analysis.interpolation</a></dt>
<dd>
<div class="block">Implements the <a href="http://en.wikipedia.org/wiki/Local_regression">
 Local Regression Algorithm</a> (also Loess, Lowess) for interpolation of
 real univariate functions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/LoessInterpolator.html#LoessInterpolator()">LoessInterpolator()</a></span> - Constructor for class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/LoessInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">LoessInterpolator</a></dt>
<dd>
<div class="block">Constructs a new <a href="./org/apache/commons/math3/analysis/interpolation/LoessInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation"><code>LoessInterpolator</code></a>
 with a bandwidth of <a href="./org/apache/commons/math3/analysis/interpolation/LoessInterpolator.html#DEFAULT_BANDWIDTH"><code>LoessInterpolator.DEFAULT_BANDWIDTH</code></a>,
 <a href="./org/apache/commons/math3/analysis/interpolation/LoessInterpolator.html#DEFAULT_ROBUSTNESS_ITERS"><code>LoessInterpolator.DEFAULT_ROBUSTNESS_ITERS</code></a> robustness iterations
 and an accuracy of {#link #DEFAULT_ACCURACY}.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/LoessInterpolator.html#LoessInterpolator(double, int)">LoessInterpolator(double, int)</a></span> - Constructor for class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/LoessInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">LoessInterpolator</a></dt>
<dd>
<div class="block">Construct a new <a href="./org/apache/commons/math3/analysis/interpolation/LoessInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation"><code>LoessInterpolator</code></a>
 with given bandwidth and number of robustness iterations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/LoessInterpolator.html#LoessInterpolator(double, int, double)">LoessInterpolator(double, int, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/LoessInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">LoessInterpolator</a></dt>
<dd>
<div class="block">Construct a new <a href="./org/apache/commons/math3/analysis/interpolation/LoessInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation"><code>LoessInterpolator</code></a>
 with given bandwidth, number of robustness iterations and accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#log()">log()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Natural logarithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#log(double[], int, double[], int)">log(double[], int, double[], int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Compute natural logarithm of a derivative structure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#log()">log()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Natural logarithm.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Log.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Log</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Natural logarithm function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Log.html#Log()">Log()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Log.html" title="class in org.apache.commons.math3.analysis.function">Log</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#log()">log()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Compute the
 <a href="http://mathworld.wolfram.com/NaturalLogarithm.html" TARGET="_top">
 natural logarithm</a> of this complex number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#log()">log()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Natural logarithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpMath.html#log(org.apache.commons.math3.dfp.Dfp)">log(Dfp)</a></span> - Static method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpMath.html" title="class in org.apache.commons.math3.dfp">DfpMath</a></dt>
<dd>
<div class="block">Returns the natural logarithm of a.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#log()">log()</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Natural logarithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#log()">log()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Natural logarithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#log(double)">log(double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Natural logarithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#log(double, double)">log(double, double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Computes the <a href="http://mathworld.wolfram.com/Logarithm.html">
 logarithm</a> in a given base.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#log10()">log10()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Base 10 logarithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#log10(double[], int, double[], int)">log10(double[], int, double[], int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Computes base 10 logarithm of a derivative structure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#log10()">log10()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Base 10 logarithm.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Log10.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Log10</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Base 10 logarithm function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Log10.html#Log10()">Log10()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Log10.html" title="class in org.apache.commons.math3.analysis.function">Log10</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#log10()">log10()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.2, replaced by <a href="./org/apache/commons/math3/dfp/Dfp.html#intLog10()"><code>Dfp.intLog10()</code></a>, in 4.0 the return type
  will be changed to Dfp</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#log10()">log10()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Base 10 logarithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#log10(double)">log10(double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Compute the base 10 logarithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#log10K()">log10K()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Get the exponent of the greatest power of 10000 that is
  less than or equal to the absolute value of this.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#log1p()">log1p()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Shifted natural logarithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#log1p(double[], int, double[], int)">log1p(double[], int, double[], int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Computes shifted logarithm of a derivative structure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#log1p()">log1p()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Shifted natural logarithm.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Log1p.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Log1p</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block"><code>log(1 + p)</code> function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Log1p.html#Log1p()">Log1p()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Log1p.html" title="class in org.apache.commons.math3.analysis.function">Log1p</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#log1p()">log1p()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Shifted natural logarithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#log1p()">log1p()</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Shifted natural logarithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#log1p()">log1p()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Shifted natural logarithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#log1p(double)">log1p(double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Computes log(1 + x).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/special/Beta.html#logBeta(double, double, double, int)">logBeta(double, double, double, int)</a></span> - Static method in class org.apache.commons.math3.special.<a href="./org/apache/commons/math3/special/Beta.html" title="class in org.apache.commons.math3.special">Beta</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of version 3.1, this method is deprecated as the
 computation of the beta function is no longer iterative; it will be
 removed in version 4.0. Current implementation of this method
 internally calls <a href="./org/apache/commons/math3/special/Beta.html#logBeta(double, double)"><code>Beta.logBeta(double, double)</code></a>.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/special/Beta.html#logBeta(double, double)">logBeta(double, double)</a></span> - Static method in class org.apache.commons.math3.special.<a href="./org/apache/commons/math3/special/Beta.html" title="class in org.apache.commons.math3.special">Beta</a></dt>
<dd>
<div class="block">Returns the value of log B(p, q) for 0 ≤ x ≤ 1 and p, q > 0.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/AbstractRealDistribution.html#logDensity(double)">logDensity(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/AbstractRealDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractRealDistribution</a></dt>
<dd>
<div class="block">Returns the natural logarithm of the probability density function (PDF) of this distribution
 evaluated at the specified point <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/BetaDistribution.html#logDensity(double)">logDensity(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/BetaDistribution.html" title="class in org.apache.commons.math3.distribution">BetaDistribution</a></dt>
<dd>
<div class="block">Returns the natural logarithm of the probability density function (PDF) of this distribution
 evaluated at the specified point <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html#logDensity(double)">logDensity(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html" title="class in org.apache.commons.math3.distribution">ChiSquaredDistribution</a></dt>
<dd>
<div class="block">Returns the natural logarithm of the probability density function (PDF) of this distribution
 evaluated at the specified point <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html#logDensity(double)">logDensity(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html" title="class in org.apache.commons.math3.distribution">ExponentialDistribution</a></dt>
<dd>
<div class="block">Returns the natural logarithm of the probability density function (PDF) of this distribution
 evaluated at the specified point <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/FDistribution.html#logDensity(double)">logDensity(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/FDistribution.html" title="class in org.apache.commons.math3.distribution">FDistribution</a></dt>
<dd>
<div class="block">Returns the natural logarithm of the probability density function (PDF) of this distribution
 evaluated at the specified point <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/GammaDistribution.html#logDensity(double)">logDensity(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/GammaDistribution.html" title="class in org.apache.commons.math3.distribution">GammaDistribution</a></dt>
<dd>
<div class="block">Returns the natural logarithm of the probability density function (PDF) of this distribution
 evaluated at the specified point <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LevyDistribution.html#logDensity(double)">logDensity(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LevyDistribution.html" title="class in org.apache.commons.math3.distribution">LevyDistribution</a></dt>
<dd>
<div class="block">Returns the natural logarithm of the probability density function (PDF) of this distribution
 evaluated at the specified point <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html#logDensity(double)">logDensity(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html" title="class in org.apache.commons.math3.distribution">LogNormalDistribution</a></dt>
<dd>
<div class="block">Returns the natural logarithm of the probability density function (PDF) of this distribution
 evaluated at the specified point <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/NormalDistribution.html#logDensity(double)">logDensity(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/NormalDistribution.html" title="class in org.apache.commons.math3.distribution">NormalDistribution</a></dt>
<dd>
<div class="block">Returns the natural logarithm of the probability density function (PDF) of this distribution
 evaluated at the specified point <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ParetoDistribution.html#logDensity(double)">logDensity(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ParetoDistribution.html" title="class in org.apache.commons.math3.distribution">ParetoDistribution</a></dt>
<dd>
<div class="block">Returns the natural logarithm of the probability density function (PDF) of this distribution
 evaluated at the specified point <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/TDistribution.html#logDensity(double)">logDensity(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/TDistribution.html" title="class in org.apache.commons.math3.distribution">TDistribution</a></dt>
<dd>
<div class="block">Returns the natural logarithm of the probability density function (PDF) of this distribution
 evaluated at the specified point <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/WeibullDistribution.html#logDensity(double)">logDensity(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/WeibullDistribution.html" title="class in org.apache.commons.math3.distribution">WeibullDistribution</a></dt>
<dd>
<div class="block">Returns the natural logarithm of the probability density function (PDF) of this distribution
 evaluated at the specified point <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/special/Gamma.html#logGamma(double)">logGamma(double)</a></span> - Static method in class org.apache.commons.math3.special.<a href="./org/apache/commons/math3/special/Gamma.html" title="class in org.apache.commons.math3.special">Gamma</a></dt>
<dd>
<div class="block">
 Returns the value of log&nbsp;&Gamma;(x) for x&nbsp;&gt;&nbsp;0.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/special/Gamma.html#logGamma1p(double)">logGamma1p(double)</a></span> - Static method in class org.apache.commons.math3.special.<a href="./org/apache/commons/math3/special/Gamma.html" title="class in org.apache.commons.math3.special">Gamma</a></dt>
<dd>
<div class="block">Returns the value of log &Gamma;(1 + x) for -0&#46;5 &le; x &le; 1&#46;5.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpMath.html#logInternal(org.apache.commons.math3.dfp.Dfp[])">logInternal(Dfp[])</a></span> - Static method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpMath.html" title="class in org.apache.commons.math3.dfp">DfpMath</a></dt>
<dd>
<div class="block">Computes the natural log of a number between 0 and 2.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Logistic.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Logistic</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block"><a href="http://en.wikipedia.org/wiki/Generalised_logistic_function">
  Generalised logistic</a> function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Logistic.html#Logistic(double, double, double, double, double, double)">Logistic(double, double, double, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Logistic.html" title="class in org.apache.commons.math3.analysis.function">Logistic</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Logistic.Parametric.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Logistic.Parametric</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Parametric function where the input array contains the parameters of
 the <a href="./org/apache/commons/math3/analysis/function/Logistic.html#Logistic(double, double, double, double, double, double)"><code>logistic function</code></a>, ordered as follows:
 
  k
  m
  b
  q
  a
  n
 </div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Logistic.Parametric.html#Logistic.Parametric()">Logistic.Parametric()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Logistic.Parametric.html" title="class in org.apache.commons.math3.analysis.function">Logistic.Parametric</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Logit.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Logit</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block"><a href="http://en.wikipedia.org/wiki/Logit">
  Logit</a> function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Logit.html#Logit()">Logit()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Logit.html" title="class in org.apache.commons.math3.analysis.function">Logit</a></dt>
<dd>
<div class="block">Usual logit function, where the lower bound is 0 and the higher
 bound is 1.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Logit.html#Logit(double, double)">Logit(double, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Logit.html" title="class in org.apache.commons.math3.analysis.function">Logit</a></dt>
<dd>
<div class="block">Logit function.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Logit.Parametric.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Logit.Parametric</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Parametric function where the input array contains the parameters of
 the logit function, ordered as follows:
 
  Lower bound
  Higher bound
 </div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Logit.Parametric.html#Logit.Parametric()">Logit.Parametric()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Logit.Parametric.html" title="class in org.apache.commons.math3.analysis.function">Logit.Parametric</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">LogNormalDistribution</span></a> - Class in <a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a></dt>
<dd>
<div class="block">Implementation of the log-normal (gaussian) distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html#LogNormalDistribution()">LogNormalDistribution()</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html" title="class in org.apache.commons.math3.distribution">LogNormalDistribution</a></dt>
<dd>
<div class="block">Create a log-normal distribution, where the mean and standard deviation
 of the <a href="./org/apache/commons/math3/distribution/NormalDistribution.html" title="class in org.apache.commons.math3.distribution"><code>normally distributed</code></a> natural
 logarithm of the log-normal distribution are equal to zero and one
 respectively.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html#LogNormalDistribution(double, double)">LogNormalDistribution(double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html" title="class in org.apache.commons.math3.distribution">LogNormalDistribution</a></dt>
<dd>
<div class="block">Create a log-normal distribution using the specified scale and shape.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html#LogNormalDistribution(double, double, double)">LogNormalDistribution(double, double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html" title="class in org.apache.commons.math3.distribution">LogNormalDistribution</a></dt>
<dd>
<div class="block">Create a log-normal distribution using the specified scale, shape and
 inverse cumulative distribution accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html#LogNormalDistribution(org.apache.commons.math3.random.RandomGenerator, double, double)">LogNormalDistribution(RandomGenerator, double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html" title="class in org.apache.commons.math3.distribution">LogNormalDistribution</a></dt>
<dd>
<div class="block">Creates a log-normal distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html#LogNormalDistribution(org.apache.commons.math3.random.RandomGenerator, double, double, double)">LogNormalDistribution(RandomGenerator, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html" title="class in org.apache.commons.math3.distribution">LogNormalDistribution</a></dt>
<dd>
<div class="block">Creates a log-normal distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/AbstractIntegerDistribution.html#logProbability(int)">logProbability(int)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/AbstractIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractIntegerDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according to
 this distribution, this method returns <code>log(P(X = x))</code>, where
 <code>log</code> is the natural logarithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/BinomialDistribution.html#logProbability(int)">logProbability(int)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/BinomialDistribution.html" title="class in org.apache.commons.math3.distribution">BinomialDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according to
 this distribution, this method returns <code>log(P(X = x))</code>, where
 <code>log</code> is the natural logarithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/GeometricDistribution.html#logProbability(int)">logProbability(int)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/GeometricDistribution.html" title="class in org.apache.commons.math3.distribution">GeometricDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according to
 this distribution, this method returns <code>log(P(X = x))</code>, where
 <code>log</code> is the natural logarithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/HypergeometricDistribution.html#logProbability(int)">logProbability(int)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/HypergeometricDistribution.html" title="class in org.apache.commons.math3.distribution">HypergeometricDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according to
 this distribution, this method returns <code>log(P(X = x))</code>, where
 <code>log</code> is the natural logarithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/PascalDistribution.html#logProbability(int)">logProbability(int)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/PascalDistribution.html" title="class in org.apache.commons.math3.distribution">PascalDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according to
 this distribution, this method returns <code>log(P(X = x))</code>, where
 <code>log</code> is the natural logarithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/PoissonDistribution.html#logProbability(int)">logProbability(int)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/PoissonDistribution.html" title="class in org.apache.commons.math3.distribution">PoissonDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according to
 this distribution, this method returns <code>log(P(X = x))</code>, where
 <code>log</code> is the natural logarithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ZipfDistribution.html#logProbability(int)">logProbability(int)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ZipfDistribution.html" title="class in org.apache.commons.math3.distribution">ZipfDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according to
 this distribution, this method returns <code>log(P(X = x))</code>, where
 <code>log</code> is the natural logarithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#longValue()">longValue()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Gets the fraction as a <tt>long</tt>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#longValue()">longValue()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">Gets the fraction as a <tt>long</tt>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#longValue()">longValue()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">

 The current implementation performs casting to a <code>long</code>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/LUDecomposition.html" title="class in org.apache.commons.math3.linear"><span class="strong">LUDecomposition</span></a> - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Calculates the LUP-decomposition of a square matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/LUDecomposition.html#LUDecomposition(org.apache.commons.math3.linear.RealMatrix)">LUDecomposition(RealMatrix)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/LUDecomposition.html" title="class in org.apache.commons.math3.linear">LUDecomposition</a></dt>
<dd>
<div class="block">Calculates the LU-decomposition of the given matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/LUDecomposition.html#LUDecomposition(org.apache.commons.math3.linear.RealMatrix, double)">LUDecomposition(RealMatrix, double)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/LUDecomposition.html" title="class in org.apache.commons.math3.linear">LUDecomposition</a></dt>
<dd>
<div class="block">Calculates the LU-decomposition of the given matrix.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/nonstiff/LutherIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff"><span class="strong">LutherIntegrator</span></a> - Class in <a href="./org/apache/commons/math3/ode/nonstiff/package-summary.html">org.apache.commons.math3.ode.nonstiff</a></dt>
<dd>
<div class="block">This class implements the Luther sixth order Runge-Kutta
 integrator for Ordinary Differential Equations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/LutherIntegrator.html#LutherIntegrator(double)">LutherIntegrator(double)</a></span> - Constructor for class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/LutherIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">LutherIntegrator</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
</dl>
<a name="_M_">
<!--   -->
</a>
<h2 class="title">M</h2>
<dl>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/SecondMoment.html#m2">m2</a></span> - Variable in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/SecondMoment.html" title="class in org.apache.commons.math3.stat.descriptive.moment">SecondMoment</a></dt>
<dd>
<div class="block">second moment of values that have been added</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#main(java.lang.String[])">main(String[])</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Print out contents of arrays, and check the length.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html#mainSetDimension">mainSetDimension</a></span> - Variable in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">AdaptiveStepsizeIntegrator</a></dt>
<dd>
<div class="block">Main set dimension.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/MainStateJacobianProvider.html" title="interface in org.apache.commons.math3.ode"><span class="strong">MainStateJacobianProvider</span></a> - Interface in <a href="./org/apache/commons/math3/ode/package-summary.html">org.apache.commons.math3.ode</a></dt>
<dd>
<div class="block">Interface expanding <a href="./org/apache/commons/math3/ode/FirstOrderDifferentialEquations.html" title="interface in org.apache.commons.math3.ode"><code>first order
  differential equations</code></a> in order to compute exactly the main state jacobian
  matrix for <a href="./org/apache/commons/math3/ode/JacobianMatrices.html" title="class in org.apache.commons.math3.ode"><code>partial derivatives equations</code></a>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/distance/ManhattanDistance.html" title="class in org.apache.commons.math3.ml.distance"><span class="strong">ManhattanDistance</span></a> - Class in <a href="./org/apache/commons/math3/ml/distance/package-summary.html">org.apache.commons.math3.ml.distance</a></dt>
<dd>
<div class="block">Calculates the L<sub>1</sub> (sum of abs) distance between two points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/distance/ManhattanDistance.html#ManhattanDistance()">ManhattanDistance()</a></span> - Constructor for class org.apache.commons.math3.ml.distance.<a href="./org/apache/commons/math3/ml/distance/ManhattanDistance.html" title="class in org.apache.commons.math3.ml.distance">ManhattanDistance</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/MannWhitneyUTest.html#mannWhitneyU(double[], double[])">mannWhitneyU(double[], double[])</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/MannWhitneyUTest.html" title="class in org.apache.commons.math3.stat.inference">MannWhitneyUTest</a></dt>
<dd>
<div class="block">Computes the <a
 href="http://en.wikipedia.org/wiki/Mann%E2%80%93Whitney_U"> Mann-Whitney
 U statistic</a> comparing mean for two independent samples possibly of
 different length.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/inference/MannWhitneyUTest.html" title="class in org.apache.commons.math3.stat.inference"><span class="strong">MannWhitneyUTest</span></a> - Class in <a href="./org/apache/commons/math3/stat/inference/package-summary.html">org.apache.commons.math3.stat.inference</a></dt>
<dd>
<div class="block">An implementation of the Mann-Whitney U test (also called Wilcoxon rank-sum test).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/MannWhitneyUTest.html#MannWhitneyUTest()">MannWhitneyUTest()</a></span> - Constructor for class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/MannWhitneyUTest.html" title="class in org.apache.commons.math3.stat.inference">MannWhitneyUTest</a></dt>
<dd>
<div class="block">Create a test instance using where NaN's are left in place and ties get
 the average of applicable ranks.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/MannWhitneyUTest.html#MannWhitneyUTest(org.apache.commons.math3.stat.ranking.NaNStrategy, org.apache.commons.math3.stat.ranking.TiesStrategy)">MannWhitneyUTest(NaNStrategy, TiesStrategy)</a></span> - Constructor for class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/MannWhitneyUTest.html" title="class in org.apache.commons.math3.stat.inference">MannWhitneyUTest</a></dt>
<dd>
<div class="block">Create a test instance using the given strategies for NaN's and ties.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/MannWhitneyUTest.html#mannWhitneyUTest(double[], double[])">mannWhitneyUTest(double[], double[])</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/MannWhitneyUTest.html" title="class in org.apache.commons.math3.stat.inference">MannWhitneyUTest</a></dt>
<dd>
<div class="block">Returns the asymptotic <i>observed significance level</i>, or <a href=
 "http://www.cas.lancs.ac.uk/glossary_v1.1/hyptest.html#pvalue">
 p-value</a>, associated with a <a
 href="http://en.wikipedia.org/wiki/Mann%E2%80%93Whitney_U"> Mann-Whitney
 U statistic</a> comparing mean for two independent samples.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#mant">mant</a></span> - Variable in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Mantissa.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#map(org.apache.commons.math3.analysis.UnivariateFunction)">map(UnivariateFunction)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Acts as if implemented as:</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#map(org.apache.commons.math3.analysis.UnivariateFunction)">map(UnivariateFunction)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Acts as if implemented as:</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#mapAdd(T)">mapAdd(T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Map an addition operation to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVector.html#mapAdd(T)">mapAdd(T)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVector.html" title="interface in org.apache.commons.math3.linear">FieldVector</a></dt>
<dd>
<div class="block">Map an addition operation to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#mapAdd(double)">mapAdd(double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Add a value to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#mapAdd(double)">mapAdd(double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Add a value to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#mapAdd(T)">mapAdd(T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Map an addition operation to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#mapAddToSelf(T)">mapAddToSelf(T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Map an addition operation to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#mapAddToSelf(double)">mapAddToSelf(double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Add a value to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVector.html#mapAddToSelf(T)">mapAddToSelf(T)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVector.html" title="interface in org.apache.commons.math3.linear">FieldVector</a></dt>
<dd>
<div class="block">Map an addition operation to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#mapAddToSelf(double)">mapAddToSelf(double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Add a value to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#mapAddToSelf(double)">mapAddToSelf(double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Add a value to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#mapAddToSelf(T)">mapAddToSelf(T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Map an addition operation to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#mapDivide(T)">mapDivide(T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Map a division operation to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVector.html#mapDivide(T)">mapDivide(T)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVector.html" title="interface in org.apache.commons.math3.linear">FieldVector</a></dt>
<dd>
<div class="block">Map a division operation to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#mapDivide(double)">mapDivide(double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Divide each entry by the argument.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#mapDivide(T)">mapDivide(T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Map a division operation to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#mapDivideToSelf(T)">mapDivideToSelf(T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Map a division operation to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#mapDivideToSelf(double)">mapDivideToSelf(double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Divide each entry by the argument.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVector.html#mapDivideToSelf(T)">mapDivideToSelf(T)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVector.html" title="interface in org.apache.commons.math3.linear">FieldVector</a></dt>
<dd>
<div class="block">Map a division operation to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#mapDivideToSelf(double)">mapDivideToSelf(double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Divide each entry by the argument.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#mapDivideToSelf(T)">mapDivideToSelf(T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Map a division operation to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#mapInv()">mapInv()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Map the 1/x function to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVector.html#mapInv()">mapInv()</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVector.html" title="interface in org.apache.commons.math3.linear">FieldVector</a></dt>
<dd>
<div class="block">Map the 1/x function to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#mapInv()">mapInv()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Map the 1/x function to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#mapInvToSelf()">mapInvToSelf()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Map the 1/x function to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVector.html#mapInvToSelf()">mapInvToSelf()</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVector.html" title="interface in org.apache.commons.math3.linear">FieldVector</a></dt>
<dd>
<div class="block">Map the 1/x function to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#mapInvToSelf()">mapInvToSelf()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Map the 1/x function to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#mapMultiply(T)">mapMultiply(T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Map a multiplication operation to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVector.html#mapMultiply(T)">mapMultiply(T)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVector.html" title="interface in org.apache.commons.math3.linear">FieldVector</a></dt>
<dd>
<div class="block">Map a multiplication operation to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#mapMultiply(double)">mapMultiply(double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Multiply each entry by the argument.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#mapMultiply(T)">mapMultiply(T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Map a multiplication operation to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#mapMultiplyToSelf(T)">mapMultiplyToSelf(T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Map a multiplication operation to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#mapMultiplyToSelf(double)">mapMultiplyToSelf(double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Multiply each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVector.html#mapMultiplyToSelf(T)">mapMultiplyToSelf(T)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVector.html" title="interface in org.apache.commons.math3.linear">FieldVector</a></dt>
<dd>
<div class="block">Map a multiplication operation to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#mapMultiplyToSelf(double)">mapMultiplyToSelf(double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Multiply each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#mapMultiplyToSelf(T)">mapMultiplyToSelf(T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Map a multiplication operation to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#mapSubtract(T)">mapSubtract(T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Map a subtraction operation to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVector.html#mapSubtract(T)">mapSubtract(T)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVector.html" title="interface in org.apache.commons.math3.linear">FieldVector</a></dt>
<dd>
<div class="block">Map a subtraction operation to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#mapSubtract(double)">mapSubtract(double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Subtract a value from each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#mapSubtract(T)">mapSubtract(T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Map a subtraction operation to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#mapSubtractToSelf(T)">mapSubtractToSelf(T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Map a subtraction operation to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#mapSubtractToSelf(double)">mapSubtractToSelf(double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Subtract a value from each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVector.html#mapSubtractToSelf(T)">mapSubtractToSelf(T)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVector.html" title="interface in org.apache.commons.math3.linear">FieldVector</a></dt>
<dd>
<div class="block">Map a subtraction operation to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#mapSubtractToSelf(double)">mapSubtractToSelf(double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Subtract a value from each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#mapSubtractToSelf(T)">mapSubtractToSelf(T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Map a subtraction operation to each entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#mapToSelf(org.apache.commons.math3.analysis.UnivariateFunction)">mapToSelf(UnivariateFunction)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Acts as if it is implemented as:</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#mapToSelf(org.apache.commons.math3.analysis.UnivariateFunction)">mapToSelf(UnivariateFunction)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Acts as if it is implemented as:</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/neuralnet/MapUtils.html" title="class in org.apache.commons.math3.ml.neuralnet"><span class="strong">MapUtils</span></a> - Class in <a href="./org/apache/commons/math3/ml/neuralnet/package-summary.html">org.apache.commons.math3.ml.neuralnet</a></dt>
<dd>
<div class="block">Utilities for network maps.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/CycleCrossover.html#mate(org.apache.commons.math3.genetics.AbstractListChromosome, org.apache.commons.math3.genetics.AbstractListChromosome)">mate(AbstractListChromosome&lt;T&gt;, AbstractListChromosome&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/CycleCrossover.html" title="class in org.apache.commons.math3.genetics">CycleCrossover</a></dt>
<dd>
<div class="block">Helper for <a href="./org/apache/commons/math3/genetics/CycleCrossover.html#crossover(org.apache.commons.math3.genetics.Chromosome, org.apache.commons.math3.genetics.Chromosome)"><code>CycleCrossover.crossover(Chromosome, Chromosome)</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/OrderedCrossover.html#mate(org.apache.commons.math3.genetics.AbstractListChromosome, org.apache.commons.math3.genetics.AbstractListChromosome)">mate(AbstractListChromosome&lt;T&gt;, AbstractListChromosome&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/OrderedCrossover.html" title="class in org.apache.commons.math3.genetics">OrderedCrossover</a></dt>
<dd>
<div class="block">Helper for <a href="./org/apache/commons/math3/genetics/OrderedCrossover.html#crossover(org.apache.commons.math3.genetics.Chromosome, org.apache.commons.math3.genetics.Chromosome)"><code>OrderedCrossover.crossover(Chromosome, Chromosome)</code></a>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/exception/MathArithmeticException.html" title="class in org.apache.commons.math3.exception"><span class="strong">MathArithmeticException</span></a> - Exception in <a href="./org/apache/commons/math3/exception/package-summary.html">org.apache.commons.math3.exception</a></dt>
<dd>
<div class="block">Base class for arithmetic exceptions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MathArithmeticException.html#MathArithmeticException()">MathArithmeticException()</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MathArithmeticException.html" title="class in org.apache.commons.math3.exception">MathArithmeticException</a></dt>
<dd>
<div class="block">Default constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MathArithmeticException.html#MathArithmeticException(org.apache.commons.math3.exception.util.Localizable, java.lang.Object...)">MathArithmeticException(Localizable, Object...)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MathArithmeticException.html" title="class in org.apache.commons.math3.exception">MathArithmeticException</a></dt>
<dd>
<div class="block">Constructor with a specific message.</div>
</dd>
<dt><a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util"><span class="strong">MathArrays</span></a> - Class in <a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a></dt>
<dd>
<div class="block">Arrays utilities.</div>
</dd>
<dt><a href="./org/apache/commons/math3/util/MathArrays.Function.html" title="interface in org.apache.commons.math3.util"><span class="strong">MathArrays.Function</span></a> - Interface in <a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a></dt>
<dd>
<div class="block">Real-valued function that operate on an array or a part of it.</div>
</dd>
<dt><a href="./org/apache/commons/math3/util/MathArrays.OrderDirection.html" title="enum in org.apache.commons.math3.util"><span class="strong">MathArrays.OrderDirection</span></a> - Enum in <a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a></dt>
<dd>
<div class="block">Specification of ordering direction.</div>
</dd>
<dt><a href="./org/apache/commons/math3/util/MathArrays.Position.html" title="enum in org.apache.commons.math3.util"><span class="strong">MathArrays.Position</span></a> - Enum in <a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a></dt>
<dd>
<div class="block">Specification for indicating that some operation applies
 before or after a given index.</div>
</dd>
<dt><a href="./org/apache/commons/math3/exception/MathIllegalArgumentException.html" title="class in org.apache.commons.math3.exception"><span class="strong">MathIllegalArgumentException</span></a> - Exception in <a href="./org/apache/commons/math3/exception/package-summary.html">org.apache.commons.math3.exception</a></dt>
<dd>
<div class="block">Base class for all preconditions violation exceptions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MathIllegalArgumentException.html#MathIllegalArgumentException(org.apache.commons.math3.exception.util.Localizable, java.lang.Object...)">MathIllegalArgumentException(Localizable, Object...)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MathIllegalArgumentException.html" title="class in org.apache.commons.math3.exception">MathIllegalArgumentException</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/exception/MathIllegalNumberException.html" title="class in org.apache.commons.math3.exception"><span class="strong">MathIllegalNumberException</span></a> - Exception in <a href="./org/apache/commons/math3/exception/package-summary.html">org.apache.commons.math3.exception</a></dt>
<dd>
<div class="block">Base class for exceptions raised by a wrong number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MathIllegalNumberException.html#MathIllegalNumberException(org.apache.commons.math3.exception.util.Localizable, java.lang.Number, java.lang.Object...)">MathIllegalNumberException(Localizable, Number, Object...)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MathIllegalNumberException.html" title="class in org.apache.commons.math3.exception">MathIllegalNumberException</a></dt>
<dd>
<div class="block">Construct an exception.</div>
</dd>
<dt><a href="./org/apache/commons/math3/exception/MathIllegalStateException.html" title="class in org.apache.commons.math3.exception"><span class="strong">MathIllegalStateException</span></a> - Exception in <a href="./org/apache/commons/math3/exception/package-summary.html">org.apache.commons.math3.exception</a></dt>
<dd>
<div class="block">Base class for all exceptions that signal a mismatch between the
 current state and the user's expectations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MathIllegalStateException.html#MathIllegalStateException(org.apache.commons.math3.exception.util.Localizable, java.lang.Object...)">MathIllegalStateException(Localizable, Object...)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MathIllegalStateException.html" title="class in org.apache.commons.math3.exception">MathIllegalStateException</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MathIllegalStateException.html#MathIllegalStateException(java.lang.Throwable, org.apache.commons.math3.exception.util.Localizable, java.lang.Object...)">MathIllegalStateException(Throwable, Localizable, Object...)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MathIllegalStateException.html" title="class in org.apache.commons.math3.exception">MathIllegalStateException</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MathIllegalStateException.html#MathIllegalStateException()">MathIllegalStateException()</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MathIllegalStateException.html" title="class in org.apache.commons.math3.exception">MathIllegalStateException</a></dt>
<dd>
<div class="block">Default constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/exception/MathInternalError.html" title="class in org.apache.commons.math3.exception"><span class="strong">MathInternalError</span></a> - Exception in <a href="./org/apache/commons/math3/exception/package-summary.html">org.apache.commons.math3.exception</a></dt>
<dd>
<div class="block">Exception triggered when something that shouldn't happen does happen.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MathInternalError.html#MathInternalError()">MathInternalError()</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MathInternalError.html" title="class in org.apache.commons.math3.exception">MathInternalError</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MathInternalError.html#MathInternalError(java.lang.Throwable)">MathInternalError(Throwable)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MathInternalError.html" title="class in org.apache.commons.math3.exception">MathInternalError</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MathInternalError.html#MathInternalError(org.apache.commons.math3.exception.util.Localizable, java.lang.Object...)">MathInternalError(Localizable, Object...)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MathInternalError.html" title="class in org.apache.commons.math3.exception">MathInternalError</a></dt>
<dd>
<div class="block">Constructor accepting a localized message.</div>
</dd>
<dt><a href="./org/apache/commons/math3/exception/MathParseException.html" title="class in org.apache.commons.math3.exception"><span class="strong">MathParseException</span></a> - Exception in <a href="./org/apache/commons/math3/exception/package-summary.html">org.apache.commons.math3.exception</a></dt>
<dd>
<div class="block">Class to signal parse failures.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MathParseException.html#MathParseException(java.lang.String, int, java.lang.Class)">MathParseException(String, int, Class&lt;?&gt;)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MathParseException.html" title="class in org.apache.commons.math3.exception">MathParseException</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MathParseException.html#MathParseException(java.lang.String, int)">MathParseException(String, int)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MathParseException.html" title="class in org.apache.commons.math3.exception">MathParseException</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/exception/MathRuntimeException.html" title="class in org.apache.commons.math3.exception"><span class="strong">MathRuntimeException</span></a> - Exception in <a href="./org/apache/commons/math3/exception/package-summary.html">org.apache.commons.math3.exception</a></dt>
<dd>
<div class="block">As of release 4.0, all exceptions thrown by the Commons Math code (except
 <a href="./org/apache/commons/math3/exception/NullArgumentException.html" title="class in org.apache.commons.math3.exception"><code>NullArgumentException</code></a>) inherit from this class.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MathRuntimeException.html#MathRuntimeException(org.apache.commons.math3.exception.util.Localizable, java.lang.Object...)">MathRuntimeException(Localizable, Object...)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MathRuntimeException.html" title="class in org.apache.commons.math3.exception">MathRuntimeException</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/exception/MathUnsupportedOperationException.html" title="class in org.apache.commons.math3.exception"><span class="strong">MathUnsupportedOperationException</span></a> - Exception in <a href="./org/apache/commons/math3/exception/package-summary.html">org.apache.commons.math3.exception</a></dt>
<dd>
<div class="block">Base class for all unsupported features.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MathUnsupportedOperationException.html#MathUnsupportedOperationException()">MathUnsupportedOperationException()</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MathUnsupportedOperationException.html" title="class in org.apache.commons.math3.exception">MathUnsupportedOperationException</a></dt>
<dd>
<div class="block">Default constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MathUnsupportedOperationException.html#MathUnsupportedOperationException(org.apache.commons.math3.exception.util.Localizable, java.lang.Object...)">MathUnsupportedOperationException(Localizable, Object...)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MathUnsupportedOperationException.html" title="class in org.apache.commons.math3.exception">MathUnsupportedOperationException</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/util/MathUtils.html" title="class in org.apache.commons.math3.util"><span class="strong">MathUtils</span></a> - Class in <a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a></dt>
<dd>
<div class="block">Miscellaneous utility functions.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/MatrixDimensionMismatchException.html" title="class in org.apache.commons.math3.linear"><span class="strong">MatrixDimensionMismatchException</span></a> - Exception in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Exception to be thrown when either the number of rows or the number of
 columns of a matrix do not match the expected values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixDimensionMismatchException.html#MatrixDimensionMismatchException(int, int, int, int)">MatrixDimensionMismatchException(int, int, int, int)</a></span> - Constructor for exception org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixDimensionMismatchException.html" title="class in org.apache.commons.math3.linear">MatrixDimensionMismatchException</a></dt>
<dd>
<div class="block">Construct an exception from the mismatched dimensions.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear"><span class="strong">MatrixUtils</span></a> - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">A collection of static methods that operate on or return matrices.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Max.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Max</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Maximum function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Max.html#Max()">Max()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Max.html" title="class in org.apache.commons.math3.analysis.function">Max</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/rank/Max.html" title="class in org.apache.commons.math3.stat.descriptive.rank"><span class="strong">Max</span></a> - Class in <a href="./org/apache/commons/math3/stat/descriptive/rank/package-summary.html">org.apache.commons.math3.stat.descriptive.rank</a></dt>
<dd>
<div class="block">Returns the maximum of the available values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/rank/Max.html#Max()">Max()</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.rank.<a href="./org/apache/commons/math3/stat/descriptive/rank/Max.html" title="class in org.apache.commons.math3.stat.descriptive.rank">Max</a></dt>
<dd>
<div class="block">Create a Max instance</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/rank/Max.html#Max(org.apache.commons.math3.stat.descriptive.rank.Max)">Max(Max)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.rank.<a href="./org/apache/commons/math3/stat/descriptive/rank/Max.html" title="class in org.apache.commons.math3.stat.descriptive.rank">Max</a></dt>
<dd>
<div class="block">Copy constructor, creates a new <code>Max</code> identical
 to the <code>original</code></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/StatUtils.html#max(double[])">max(double[])</a></span> - Static method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/StatUtils.html" title="class in org.apache.commons.math3.stat">StatUtils</a></dt>
<dd>
<div class="block">Returns the maximum of the entries in the input array, or
 <code>Double.NaN</code> if the array is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/StatUtils.html#max(double[], int, int)">max(double[], int, int)</a></span> - Static method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/StatUtils.html" title="class in org.apache.commons.math3.stat">StatUtils</a></dt>
<dd>
<div class="block">Returns the maximum of the entries in the specified portion of
 the input array, or <code>Double.NaN</code> if the designated subarray
 is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#max(int, int)">max(int, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Compute the maximum of two values</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#max(long, long)">max(long, long)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Compute the maximum of two values</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#max(float, float)">max(float, float)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Compute the maximum of two values</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#max(double, double)">max(double, double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Compute the maximum of two values</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#MAX_EXP">MAX_EXP</a></span> - Static variable in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">The maximum exponent before overflow is signaled and results flushed
  to infinity</div>
</dd>
<dt><a href="./org/apache/commons/math3/exception/MaxCountExceededException.html" title="class in org.apache.commons.math3.exception"><span class="strong">MaxCountExceededException</span></a> - Exception in <a href="./org/apache/commons/math3/exception/package-summary.html">org.apache.commons.math3.exception</a></dt>
<dd>
<div class="block">Exception to be thrown when some counter maximum value is exceeded.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MaxCountExceededException.html#MaxCountExceededException(java.lang.Number)">MaxCountExceededException(Number)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MaxCountExceededException.html" title="class in org.apache.commons.math3.exception">MaxCountExceededException</a></dt>
<dd>
<div class="block">Construct the exception.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MaxCountExceededException.html#MaxCountExceededException(org.apache.commons.math3.exception.util.Localizable, java.lang.Number, java.lang.Object...)">MaxCountExceededException(Localizable, Number, Object...)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MaxCountExceededException.html" title="class in org.apache.commons.math3.exception">MaxCountExceededException</a></dt>
<dd>
<div class="block">Construct the exception with a specific context.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/MaxEval.html" title="class in org.apache.commons.math3.optim"><span class="strong">MaxEval</span></a> - Class in <a href="./org/apache/commons/math3/optim/package-summary.html">org.apache.commons.math3.optim</a></dt>
<dd>
<div class="block">Maximum number of evaluations of the function to be optimized.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/MaxEval.html#MaxEval(int)">MaxEval(int)</a></span> - Constructor for class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/MaxEval.html" title="class in org.apache.commons.math3.optim">MaxEval</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresBuilder.html#maxEvaluations(int)">maxEvaluations(int)</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresBuilder.html" title="class in org.apache.commons.math3.fitting.leastsquares">LeastSquaresBuilder</a></dt>
<dd>
<div class="block">Configure the max evaluations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html#MAXIMUM_PARTIAL_SUM_COUNT">MAXIMUM_PARTIAL_SUM_COUNT</a></span> - Static variable in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html" title="class in org.apache.commons.math3.stat.inference">KolmogorovSmirnovTest</a></dt>
<dd>
<div class="block">Bound on the number of partial sums in <a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html#ksSum(double, double, int)"><code>KolmogorovSmirnovTest.ksSum(double, double, int)</code></a></div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/MaxIter.html" title="class in org.apache.commons.math3.optim"><span class="strong">MaxIter</span></a> - Class in <a href="./org/apache/commons/math3/optim/package-summary.html">org.apache.commons.math3.optim</a></dt>
<dd>
<div class="block">Maximum number of iterations performed by an (iterative) algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/MaxIter.html#MaxIter(int)">MaxIter(int)</a></span> - Constructor for class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/MaxIter.html" title="class in org.apache.commons.math3.optim">MaxIter</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresBuilder.html#maxIterations(int)">maxIterations(int)</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresBuilder.html" title="class in org.apache.commons.math3.fitting.leastsquares">LeastSquaresBuilder</a></dt>
<dd>
<div class="block">Configure the max iterations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/FastFourierTransformer.html#mdfft(java.lang.Object, org.apache.commons.math3.transform.TransformType)">mdfft(Object, TransformType)</a></span> - Method in class org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/FastFourierTransformer.html" title="class in org.apache.commons.math3.transform">FastFourierTransformer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>see MATH-736</i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/moment/Mean.html" title="class in org.apache.commons.math3.stat.descriptive.moment"><span class="strong">Mean</span></a> - Class in <a href="./org/apache/commons/math3/stat/descriptive/moment/package-summary.html">org.apache.commons.math3.stat.descriptive.moment</a></dt>
<dd>
<div class="block">Computes the arithmetic mean of a set of values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Mean.html#Mean()">Mean()</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Mean.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Mean</a></dt>
<dd>
<div class="block">Constructs a Mean.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Mean.html#Mean(org.apache.commons.math3.stat.descriptive.moment.FirstMoment)">Mean(FirstMoment)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Mean.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Mean</a></dt>
<dd>
<div class="block">Constructs a Mean with an External Moment.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Mean.html#Mean(org.apache.commons.math3.stat.descriptive.moment.Mean)">Mean(Mean)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Mean.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Mean</a></dt>
<dd>
<div class="block">Copy constructor, creates a new <code>Mean</code> identical
 to the <code>original</code></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/StatUtils.html#mean(double[])">mean(double[])</a></span> - Static method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/StatUtils.html" title="class in org.apache.commons.math3.stat">StatUtils</a></dt>
<dd>
<div class="block">Returns the arithmetic mean of the entries in the input array, or
 <code>Double.NaN</code> if the array is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/StatUtils.html#mean(double[], int, int)">mean(double[], int, int)</a></span> - Static method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/StatUtils.html" title="class in org.apache.commons.math3.stat">StatUtils</a></dt>
<dd>
<div class="block">Returns the arithmetic mean of the entries in the specified portion of
 the input array, or <code>Double.NaN</code> if the designated subarray
 is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/StatUtils.html#meanDifference(double[], double[])">meanDifference(double[], double[])</a></span> - Static method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/StatUtils.html" title="class in org.apache.commons.math3.stat">StatUtils</a></dt>
<dd>
<div class="block">Returns the mean of the (signed) differences between corresponding elements of the
 input arrays -- i.e., sum(sample1[i] - sample2[i]) / sample1.length.</div>
</dd>
<dt><a href="./org/apache/commons/math3/filter/MeasurementModel.html" title="interface in org.apache.commons.math3.filter"><span class="strong">MeasurementModel</span></a> - Interface in <a href="./org/apache/commons/math3/filter/package-summary.html">org.apache.commons.math3.filter</a></dt>
<dd>
<div class="block">Defines the measurement model for the use with a <a href="./org/apache/commons/math3/filter/KalmanFilter.html" title="class in org.apache.commons.math3.filter"><code>KalmanFilter</code></a>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/rank/Median.html" title="class in org.apache.commons.math3.stat.descriptive.rank"><span class="strong">Median</span></a> - Class in <a href="./org/apache/commons/math3/stat/descriptive/rank/package-summary.html">org.apache.commons.math3.stat.descriptive.rank</a></dt>
<dd>
<div class="block">Returns the median of the available values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/rank/Median.html#Median()">Median()</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.rank.<a href="./org/apache/commons/math3/stat/descriptive/rank/Median.html" title="class in org.apache.commons.math3.stat.descriptive.rank">Median</a></dt>
<dd>
<div class="block">Default constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/rank/Median.html#Median(org.apache.commons.math3.stat.descriptive.rank.Median)">Median(Median)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.rank.<a href="./org/apache/commons/math3/stat/descriptive/rank/Median.html" title="class in org.apache.commons.math3.stat.descriptive.rank">Median</a></dt>
<dd>
<div class="block">Copy constructor, creates a new <code>Median</code> identical
 to the <code>original</code></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.LeafMerger.html#merge(org.apache.commons.math3.geometry.partitioning.BSPTree, org.apache.commons.math3.geometry.partitioning.BSPTree, org.apache.commons.math3.geometry.partitioning.BSPTree, boolean, boolean)">merge(BSPTree&lt;S&gt;, BSPTree&lt;S&gt;, BSPTree&lt;S&gt;, boolean, boolean)</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.LeafMerger.html" title="interface in org.apache.commons.math3.geometry.partitioning">BSPTree.LeafMerger</a></dt>
<dd>
<div class="block">Merge a leaf node and a tree node.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html#merge(org.apache.commons.math3.geometry.partitioning.BSPTree, org.apache.commons.math3.geometry.partitioning.BSPTree.LeafMerger)">merge(BSPTree&lt;S&gt;, BSPTree.LeafMerger&lt;S&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html" title="class in org.apache.commons.math3.geometry.partitioning">BSPTree</a></dt>
<dd>
<div class="block">Merge a BSP tree with the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#merge(org.apache.commons.math3.stat.Frequency)">merge(Frequency)</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Merge another Frequency object's counts into this instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#merge(java.util.Collection)">merge(Collection&lt;Frequency&gt;)</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Merge a <a href="http://docs.oracle.com/javase/6/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util"><code>Collection</code></a> of <a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat"><code>Frequency</code></a> objects into this instance.</div>
</dd>
<dt><a href="./org/apache/commons/math3/random/MersenneTwister.html" title="class in org.apache.commons.math3.random"><span class="strong">MersenneTwister</span></a> - Class in <a href="./org/apache/commons/math3/random/package-summary.html">org.apache.commons.math3.random</a></dt>
<dd>
<div class="block">This class implements a powerful pseudo-random number generator
 developed by Makoto Matsumoto and Takuji Nishimura during
 1996-1997.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/MersenneTwister.html#MersenneTwister()">MersenneTwister()</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/MersenneTwister.html" title="class in org.apache.commons.math3.random">MersenneTwister</a></dt>
<dd>
<div class="block">Creates a new random number generator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/MersenneTwister.html#MersenneTwister(int)">MersenneTwister(int)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/MersenneTwister.html" title="class in org.apache.commons.math3.random">MersenneTwister</a></dt>
<dd>
<div class="block">Creates a new random number generator using a single int seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/MersenneTwister.html#MersenneTwister(int[])">MersenneTwister(int[])</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/MersenneTwister.html" title="class in org.apache.commons.math3.random">MersenneTwister</a></dt>
<dd>
<div class="block">Creates a new random number generator using an int array seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/MersenneTwister.html#MersenneTwister(long)">MersenneTwister(long)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/MersenneTwister.html" title="class in org.apache.commons.math3.random">MersenneTwister</a></dt>
<dd>
<div class="block">Creates a new random number generator using a single long seed.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/interpolation/MicrosphereInterpolatingFunction.html" title="class in org.apache.commons.math3.analysis.interpolation"><span class="strong">MicrosphereInterpolatingFunction</span></a> - Class in <a href="./org/apache/commons/math3/analysis/interpolation/package-summary.html">org.apache.commons.math3.analysis.interpolation</a></dt>
<dd>
<div class="block">Interpolating function that implements the
 <a href="http://www.dudziak.com/microsphere.php">Microsphere Projection</a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/MicrosphereInterpolatingFunction.html#MicrosphereInterpolatingFunction(double[][], double[], int, int, org.apache.commons.math3.random.UnitSphereRandomVectorGenerator)">MicrosphereInterpolatingFunction(double[][], double[], int, int, UnitSphereRandomVectorGenerator)</a></span> - Constructor for class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/MicrosphereInterpolatingFunction.html" title="class in org.apache.commons.math3.analysis.interpolation">MicrosphereInterpolatingFunction</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/analysis/interpolation/MicrosphereInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation"><span class="strong">MicrosphereInterpolator</span></a> - Class in <a href="./org/apache/commons/math3/analysis/interpolation/package-summary.html">org.apache.commons.math3.analysis.interpolation</a></dt>
<dd>
<div class="block">Interpolator that implements the algorithm described in
 <em>William Dudziak</em>'s
 <a href="http://www.dudziak.com/microsphere.pdf">MS thesis</a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/MicrosphereInterpolator.html#MicrosphereInterpolator()">MicrosphereInterpolator()</a></span> - Constructor for class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/MicrosphereInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">MicrosphereInterpolator</a></dt>
<dd>
<div class="block">Create a microsphere interpolator with default settings.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/MicrosphereInterpolator.html#MicrosphereInterpolator(int, int)">MicrosphereInterpolator(int, int)</a></span> - Constructor for class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/MicrosphereInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">MicrosphereInterpolator</a></dt>
<dd>
<div class="block">Create a microsphere interpolator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/UnivariateSolverUtils.html#midpoint(double, double)">midpoint(double, double)</a></span> - Static method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/UnivariateSolverUtils.html" title="class in org.apache.commons.math3.analysis.solvers">UnivariateSolverUtils</a></dt>
<dd>
<div class="block">Compute the midpoint of two values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/MidPointIntegrator.html#MIDPOINT_MAX_ITERATIONS_COUNT">MIDPOINT_MAX_ITERATIONS_COUNT</a></span> - Static variable in class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/MidPointIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">MidPointIntegrator</a></dt>
<dd>
<div class="block">Maximum number of iterations for midpoint.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/integration/MidPointIntegrator.html" title="class in org.apache.commons.math3.analysis.integration"><span class="strong">MidPointIntegrator</span></a> - Class in <a href="./org/apache/commons/math3/analysis/integration/package-summary.html">org.apache.commons.math3.analysis.integration</a></dt>
<dd>
<div class="block">Implements the <a href="http://en.wikipedia.org/wiki/Midpoint_method">
 Midpoint Rule</a> for integration of real univariate functions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/MidPointIntegrator.html#MidPointIntegrator(double, double, int, int)">MidPointIntegrator(double, double, int, int)</a></span> - Constructor for class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/MidPointIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">MidPointIntegrator</a></dt>
<dd>
<div class="block">Build a midpoint integrator with given accuracies and iterations counts.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/MidPointIntegrator.html#MidPointIntegrator(int, int)">MidPointIntegrator(int, int)</a></span> - Constructor for class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/MidPointIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">MidPointIntegrator</a></dt>
<dd>
<div class="block">Build a midpoint integrator with given iteration counts.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/MidPointIntegrator.html#MidPointIntegrator()">MidPointIntegrator()</a></span> - Constructor for class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/MidPointIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">MidPointIntegrator</a></dt>
<dd>
<div class="block">Construct a midpoint integrator with default settings.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/nonstiff/MidpointIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff"><span class="strong">MidpointIntegrator</span></a> - Class in <a href="./org/apache/commons/math3/ode/nonstiff/package-summary.html">org.apache.commons.math3.ode.nonstiff</a></dt>
<dd>
<div class="block">This class implements a second order Runge-Kutta integrator for
 Ordinary Differential Equations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/MidpointIntegrator.html#MidpointIntegrator(double)">MidpointIntegrator(double)</a></span> - Constructor for class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/MidpointIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">MidpointIntegrator</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/regression/MillerUpdatingRegression.html" title="class in org.apache.commons.math3.stat.regression"><span class="strong">MillerUpdatingRegression</span></a> - Class in <a href="./org/apache/commons/math3/stat/regression/package-summary.html">org.apache.commons.math3.stat.regression</a></dt>
<dd>
<div class="block">This class is a concrete implementation of the <a href="./org/apache/commons/math3/stat/regression/UpdatingMultipleLinearRegression.html" title="interface in org.apache.commons.math3.stat.regression"><code>UpdatingMultipleLinearRegression</code></a> interface.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/MillerUpdatingRegression.html#MillerUpdatingRegression(int, boolean, double)">MillerUpdatingRegression(int, boolean, double)</a></span> - Constructor for class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/MillerUpdatingRegression.html" title="class in org.apache.commons.math3.stat.regression">MillerUpdatingRegression</a></dt>
<dd>
<div class="block">This is the augmented constructor for the MillerUpdatingRegression class.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/MillerUpdatingRegression.html#MillerUpdatingRegression(int, boolean)">MillerUpdatingRegression(int, boolean)</a></span> - Constructor for class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/MillerUpdatingRegression.html" title="class in org.apache.commons.math3.stat.regression">MillerUpdatingRegression</a></dt>
<dd>
<div class="block">Primary constructor for the MillerUpdatingRegression.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Min.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Min</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Minimum function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Min.html#Min()">Min()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Min.html" title="class in org.apache.commons.math3.analysis.function">Min</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/rank/Min.html" title="class in org.apache.commons.math3.stat.descriptive.rank"><span class="strong">Min</span></a> - Class in <a href="./org/apache/commons/math3/stat/descriptive/rank/package-summary.html">org.apache.commons.math3.stat.descriptive.rank</a></dt>
<dd>
<div class="block">Returns the minimum of the available values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/rank/Min.html#Min()">Min()</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.rank.<a href="./org/apache/commons/math3/stat/descriptive/rank/Min.html" title="class in org.apache.commons.math3.stat.descriptive.rank">Min</a></dt>
<dd>
<div class="block">Create a Min instance</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/rank/Min.html#Min(org.apache.commons.math3.stat.descriptive.rank.Min)">Min(Min)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.rank.<a href="./org/apache/commons/math3/stat/descriptive/rank/Min.html" title="class in org.apache.commons.math3.stat.descriptive.rank">Min</a></dt>
<dd>
<div class="block">Copy constructor, creates a new <code>Min</code> identical
 to the <code>original</code></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/StatUtils.html#min(double[])">min(double[])</a></span> - Static method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/StatUtils.html" title="class in org.apache.commons.math3.stat">StatUtils</a></dt>
<dd>
<div class="block">Returns the minimum of the entries in the input array, or
 <code>Double.NaN</code> if the array is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/StatUtils.html#min(double[], int, int)">min(double[], int, int)</a></span> - Static method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/StatUtils.html" title="class in org.apache.commons.math3.stat">StatUtils</a></dt>
<dd>
<div class="block">Returns the minimum of the entries in the specified portion of
 the input array, or <code>Double.NaN</code> if the designated subarray
 is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#min(int, int)">min(int, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Compute the minimum of two values</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#min(long, long)">min(long, long)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Compute the minimum of two values</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#min(float, float)">min(float, float)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Compute the minimum of two values</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#min(double, double)">min(double, double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Compute the minimum of two values</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#MIN_EXP">MIN_EXP</a></span> - Static variable in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">The minimum exponent before underflow is signaled.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/BOBYQAOptimizer.html#MINIMUM_PROBLEM_DIMENSION">MINIMUM_PROBLEM_DIMENSION</a></span> - Static variable in class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/BOBYQAOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">BOBYQAOptimizer</a></dt>
<dd>
<div class="block">Minimum dimension of the problem: 2</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BOBYQAOptimizer.html#MINIMUM_PROBLEM_DIMENSION">MINIMUM_PROBLEM_DIMENSION</a></span> - Static variable in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BOBYQAOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BOBYQAOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Minimum dimension of the problem: 2</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Minus.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Minus</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Minus function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Minus.html#Minus()">Minus()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Minus.html" title="class in org.apache.commons.math3.analysis.function">Minus</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#MINUS_I">MINUS_I</a></span> - Static variable in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Opposite of the first canonical vector (coordinates: -1, 0, 0).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html#MINUS_I">MINUS_I</a></span> - Static variable in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html" title="class in org.apache.commons.math3.geometry.spherical.twod">S2Point</a></dt>
<dd>
<div class="block">-I (coordinates: \( \theta = \pi, \varphi = \pi/2 \)).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#MINUS_J">MINUS_J</a></span> - Static variable in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Opposite of the second canonical vector (coordinates: 0, -1, 0).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html#MINUS_J">MINUS_J</a></span> - Static variable in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html" title="class in org.apache.commons.math3.geometry.spherical.twod">S2Point</a></dt>
<dd>
<div class="block">-J (coordinates: \( \theta = 3\pi/2, \varphi = \pi/2 \)).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#MINUS_K">MINUS_K</a></span> - Static variable in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Opposite of the third canonical vector (coordinates: 0, 0, -1).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html#MINUS_K">MINUS_K</a></span> - Static variable in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html" title="class in org.apache.commons.math3.geometry.spherical.twod">S2Point</a></dt>
<dd>
<div class="block">-K (coordinates: \( \theta = any angle, \varphi = \pi \)).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#MINUS_ONE">MINUS_ONE</a></span> - Static variable in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">A fraction representing "-1 / 1".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#MINUS_ONE">MINUS_ONE</a></span> - Static variable in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">A fraction representing "-1 / 1".</div>
</dd>
<dt><a href="./org/apache/commons/math3/distribution/MixtureMultivariateNormalDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">MixtureMultivariateNormalDistribution</span></a> - Class in <a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a></dt>
<dd>
<div class="block">Multivariate normal mixture distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/MixtureMultivariateNormalDistribution.html#MixtureMultivariateNormalDistribution(double[], double[][], double[][][])">MixtureMultivariateNormalDistribution(double[], double[][], double[][][])</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/MixtureMultivariateNormalDistribution.html" title="class in org.apache.commons.math3.distribution">MixtureMultivariateNormalDistribution</a></dt>
<dd>
<div class="block">Creates a multivariate normal mixture distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/MixtureMultivariateNormalDistribution.html#MixtureMultivariateNormalDistribution(java.util.List)">MixtureMultivariateNormalDistribution(List&lt;Pair&lt;Double, MultivariateNormalDistribution&gt;&gt;)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/MixtureMultivariateNormalDistribution.html" title="class in org.apache.commons.math3.distribution">MixtureMultivariateNormalDistribution</a></dt>
<dd>
<div class="block">Creates a mixture model from a list of distributions and their
 associated weights.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/MixtureMultivariateNormalDistribution.html#MixtureMultivariateNormalDistribution(org.apache.commons.math3.random.RandomGenerator, java.util.List)">MixtureMultivariateNormalDistribution(RandomGenerator, List&lt;Pair&lt;Double, MultivariateNormalDistribution&gt;&gt;)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/MixtureMultivariateNormalDistribution.html" title="class in org.apache.commons.math3.distribution">MixtureMultivariateNormalDistribution</a></dt>
<dd>
<div class="block">Creates a mixture model from a list of distributions and their
 associated weights.</div>
</dd>
<dt><a href="./org/apache/commons/math3/distribution/MixtureMultivariateRealDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">MixtureMultivariateRealDistribution</span></a>&lt;<a href="./org/apache/commons/math3/distribution/MixtureMultivariateRealDistribution.html" title="type parameter in MixtureMultivariateRealDistribution">T</a> extends <a href="./org/apache/commons/math3/distribution/MultivariateRealDistribution.html" title="interface in org.apache.commons.math3.distribution">MultivariateRealDistribution</a>&gt; - Class in <a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a></dt>
<dd>
<div class="block">Class for representing <a href="http://en.wikipedia.org/wiki/Mixture_model">
 mixture model</a> distributions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/MixtureMultivariateRealDistribution.html#MixtureMultivariateRealDistribution(java.util.List)">MixtureMultivariateRealDistribution(List&lt;Pair&lt;Double, T&gt;&gt;)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/MixtureMultivariateRealDistribution.html" title="class in org.apache.commons.math3.distribution">MixtureMultivariateRealDistribution</a></dt>
<dd>
<div class="block">Creates a mixture model from a list of distributions and their
 associated weights.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/MixtureMultivariateRealDistribution.html#MixtureMultivariateRealDistribution(org.apache.commons.math3.random.RandomGenerator, java.util.List)">MixtureMultivariateRealDistribution(RandomGenerator, List&lt;Pair&lt;Double, T&gt;&gt;)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/MixtureMultivariateRealDistribution.html" title="class in org.apache.commons.math3.distribution">MixtureMultivariateRealDistribution</a></dt>
<dd>
<div class="block">Creates a mixture model from a list of distributions and their
 associated weights.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/StatUtils.html#mode(double[])">mode(double[])</a></span> - Static method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/StatUtils.html" title="class in org.apache.commons.math3.stat">StatUtils</a></dt>
<dd>
<div class="block">Returns the sample mode(s).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/StatUtils.html#mode(double[], int, int)">mode(double[], int, int)</a></span> - Static method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/StatUtils.html" title="class in org.apache.commons.math3.stat">StatUtils</a></dt>
<dd>
<div class="block">Returns the sample mode(s).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresBuilder.html#model(org.apache.commons.math3.analysis.MultivariateVectorFunction, org.apache.commons.math3.analysis.MultivariateMatrixFunction)">model(MultivariateVectorFunction, MultivariateMatrixFunction)</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresBuilder.html" title="class in org.apache.commons.math3.fitting.leastsquares">LeastSquaresBuilder</a></dt>
<dd>
<div class="block">Configure the model function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresBuilder.html#model(org.apache.commons.math3.fitting.leastsquares.MultivariateJacobianFunction)">model(MultivariateJacobianFunction)</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresBuilder.html" title="class in org.apache.commons.math3.fitting.leastsquares">LeastSquaresBuilder</a></dt>
<dd>
<div class="block">Configure the model function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresFactory.html#model(org.apache.commons.math3.analysis.MultivariateVectorFunction, org.apache.commons.math3.analysis.MultivariateMatrixFunction)">model(MultivariateVectorFunction, MultivariateMatrixFunction)</a></span> - Static method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresFactory.html" title="class in org.apache.commons.math3.fitting.leastsquares">LeastSquaresFactory</a></dt>
<dd>
<div class="block">Combine a <a href="./org/apache/commons/math3/analysis/MultivariateVectorFunction.html" title="interface in org.apache.commons.math3.analysis"><code>MultivariateVectorFunction</code></a> with a <a href="./org/apache/commons/math3/analysis/MultivariateMatrixFunction.html" title="interface in org.apache.commons.math3.analysis"><code>MultivariateMatrixFunction</code></a> to produce a <a href="./org/apache/commons/math3/fitting/leastsquares/MultivariateJacobianFunction.html" title="interface in org.apache.commons.math3.fitting.leastsquares"><code>MultivariateJacobianFunction</code></a>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/vector/ModelFunction.html" title="class in org.apache.commons.math3.optim.nonlinear.vector"><span class="strong">ModelFunction</span></a> - Class in <a href="./org/apache/commons/math3/optim/nonlinear/vector/package-summary.html">org.apache.commons.math3.optim.nonlinear.vector</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>All classes and interfaces in this package are deprecated.
 The optimizers that were provided here were moved to the
 <a href="./org/apache/commons/math3/fitting/leastsquares/package-summary.html"><code>org.apache.commons.math3.fitting.leastsquares</code></a> package
 (cf. MATH-1008).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/ModelFunction.html#ModelFunction(org.apache.commons.math3.analysis.MultivariateVectorFunction)">ModelFunction(MultivariateVectorFunction)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.vector.<a href="./org/apache/commons/math3/optim/nonlinear/vector/ModelFunction.html" title="class in org.apache.commons.math3.optim.nonlinear.vector">ModelFunction</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/vector/ModelFunctionJacobian.html" title="class in org.apache.commons.math3.optim.nonlinear.vector"><span class="strong">ModelFunctionJacobian</span></a> - Class in <a href="./org/apache/commons/math3/optim/nonlinear/vector/package-summary.html">org.apache.commons.math3.optim.nonlinear.vector</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>All classes and interfaces in this package are deprecated.
 The optimizers that were provided here were moved to the
 <a href="./org/apache/commons/math3/fitting/leastsquares/package-summary.html"><code>org.apache.commons.math3.fitting.leastsquares</code></a> package
 (cf. MATH-1008).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/ModelFunctionJacobian.html#ModelFunctionJacobian(org.apache.commons.math3.analysis.MultivariateMatrixFunction)">ModelFunctionJacobian(MultivariateMatrixFunction)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.vector.<a href="./org/apache/commons/math3/optim/nonlinear/vector/ModelFunctionJacobian.html" title="class in org.apache.commons.math3.optim.nonlinear.vector">ModelFunctionJacobian</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/stat/regression/ModelSpecificationException.html" title="class in org.apache.commons.math3.stat.regression"><span class="strong">ModelSpecificationException</span></a> - Exception in <a href="./org/apache/commons/math3/stat/regression/package-summary.html">org.apache.commons.math3.stat.regression</a></dt>
<dd>
<div class="block">Exception thrown when a regression model is not correctly specified.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/ModelSpecificationException.html#ModelSpecificationException(org.apache.commons.math3.exception.util.Localizable, java.lang.Object...)">ModelSpecificationException(Localizable, Object...)</a></span> - Constructor for exception org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/ModelSpecificationException.html" title="class in org.apache.commons.math3.stat.regression">ModelSpecificationException</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Kurtosis.html#moment">moment</a></span> - Variable in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Kurtosis.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Kurtosis</a></dt>
<dd>
<div class="block">Fourth Moment on which this statistic is based</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Mean.html#moment">moment</a></span> - Variable in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Mean.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Mean</a></dt>
<dd>
<div class="block">First moment on which this statistic is based.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Skewness.html#moment">moment</a></span> - Variable in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Skewness.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Skewness</a></dt>
<dd>
<div class="block">Third moment on which this statistic is based</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html#moment">moment</a></span> - Variable in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Variance</a></dt>
<dd>
<div class="block">SecondMoment is used in incremental calculation of Variance</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/twod/hull/MonotoneChain.html" title="class in org.apache.commons.math3.geometry.euclidean.twod.hull"><span class="strong">MonotoneChain</span></a> - Class in <a href="./org/apache/commons/math3/geometry/euclidean/twod/hull/package-summary.html">org.apache.commons.math3.geometry.euclidean.twod.hull</a></dt>
<dd>
<div class="block">Implements Andrew's monotone chain method to generate the convex hull of a finite set of
 points in the two-dimensional euclidean space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/hull/MonotoneChain.html#MonotoneChain()">MonotoneChain()</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.twod.hull.<a href="./org/apache/commons/math3/geometry/euclidean/twod/hull/MonotoneChain.html" title="class in org.apache.commons.math3.geometry.euclidean.twod.hull">MonotoneChain</a></dt>
<dd>
<div class="block">Create a new MonotoneChain instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/hull/MonotoneChain.html#MonotoneChain(boolean)">MonotoneChain(boolean)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.twod.hull.<a href="./org/apache/commons/math3/geometry/euclidean/twod/hull/MonotoneChain.html" title="class in org.apache.commons.math3.geometry.euclidean.twod.hull">MonotoneChain</a></dt>
<dd>
<div class="block">Create a new MonotoneChain instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/hull/MonotoneChain.html#MonotoneChain(boolean, double)">MonotoneChain(boolean, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.twod.hull.<a href="./org/apache/commons/math3/geometry/euclidean/twod/hull/MonotoneChain.html" title="class in org.apache.commons.math3.geometry.euclidean.twod.hull">MonotoneChain</a></dt>
<dd>
<div class="block">Create a new MonotoneChain instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html#MONTE_CARLO_ITERATIONS">MONTE_CARLO_ITERATIONS</a></span> - Static variable in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html" title="class in org.apache.commons.math3.stat.inference">KolmogorovSmirnovTest</a></dt>
<dd>
<div class="block">Default number of iterations used by <a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html#monteCarloP(double, int, int, boolean, int)"><code>KolmogorovSmirnovTest.monteCarloP(double, int, int, boolean, int)</code></a></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html#monteCarloP(double, int, int, boolean, int)">monteCarloP(double, int, int, boolean, int)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html" title="class in org.apache.commons.math3.stat.inference">KolmogorovSmirnovTest</a></dt>
<dd>
<div class="block">Uses Monte Carlo simulation to approximate \(P(D_{n,m} > d)\) where \(D_{n,m}\) is the
 2-sample Kolmogorov-Smirnov statistic.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#monteCarloP(double, int, int, boolean, int)">monteCarloP(double, int, int, boolean, int)</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ArithmeticUtils.html#mulAndCheck(int, int)">mulAndCheck(int, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ArithmeticUtils.html" title="class in org.apache.commons.math3.util">ArithmeticUtils</a></dt>
<dd>
<div class="block">Multiply two integers, checking for overflow.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ArithmeticUtils.html#mulAndCheck(long, long)">mulAndCheck(long, long)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ArithmeticUtils.html" title="class in org.apache.commons.math3.util">ArithmeticUtils</a></dt>
<dd>
<div class="block">Multiply two long integers, checking for overflow.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/solvers/MullerSolver.html" title="class in org.apache.commons.math3.analysis.solvers"><span class="strong">MullerSolver</span></a> - Class in <a href="./org/apache/commons/math3/analysis/solvers/package-summary.html">org.apache.commons.math3.analysis.solvers</a></dt>
<dd>
<div class="block">This class implements the <a href="http://mathworld.wolfram.com/MullersMethod.html">
 Muller's Method</a> for root finding of real univariate functions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/MullerSolver.html#MullerSolver()">MullerSolver()</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/MullerSolver.html" title="class in org.apache.commons.math3.analysis.solvers">MullerSolver</a></dt>
<dd>
<div class="block">Construct a solver with default accuracy (1e-6).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/MullerSolver.html#MullerSolver(double)">MullerSolver(double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/MullerSolver.html" title="class in org.apache.commons.math3.analysis.solvers">MullerSolver</a></dt>
<dd>
<div class="block">Construct a solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/MullerSolver.html#MullerSolver(double, double)">MullerSolver(double, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/MullerSolver.html" title="class in org.apache.commons.math3.analysis.solvers">MullerSolver</a></dt>
<dd>
<div class="block">Construct a solver.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/solvers/MullerSolver2.html" title="class in org.apache.commons.math3.analysis.solvers"><span class="strong">MullerSolver2</span></a> - Class in <a href="./org/apache/commons/math3/analysis/solvers/package-summary.html">org.apache.commons.math3.analysis.solvers</a></dt>
<dd>
<div class="block">This class implements the <a href="http://mathworld.wolfram.com/MullersMethod.html">
 Muller's Method</a> for root finding of real univariate functions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/MullerSolver2.html#MullerSolver2()">MullerSolver2()</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/MullerSolver2.html" title="class in org.apache.commons.math3.analysis.solvers">MullerSolver2</a></dt>
<dd>
<div class="block">Construct a solver with default accuracy (1e-6).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/MullerSolver2.html#MullerSolver2(double)">MullerSolver2(double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/MullerSolver2.html" title="class in org.apache.commons.math3.analysis.solvers">MullerSolver2</a></dt>
<dd>
<div class="block">Construct a solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/MullerSolver2.html#MullerSolver2(double, double)">MullerSolver2(double, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/MullerSolver2.html" title="class in org.apache.commons.math3.analysis.solvers">MullerSolver2</a></dt>
<dd>
<div class="block">Construct a solver.</div>
</dd>
<dt><a href="./org/apache/commons/math3/util/MultidimensionalCounter.html" title="class in org.apache.commons.math3.util"><span class="strong">MultidimensionalCounter</span></a> - Class in <a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a></dt>
<dd>
<div class="block">Converter between unidimensional storage structure and multidimensional
 conceptual structure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MultidimensionalCounter.html#MultidimensionalCounter(int...)">MultidimensionalCounter(int...)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MultidimensionalCounter.html" title="class in org.apache.commons.math3.util">MultidimensionalCounter</a></dt>
<dd>
<div class="block">Create a counter.</div>
</dd>
<dt><a href="./org/apache/commons/math3/util/MultidimensionalCounter.Iterator.html" title="class in org.apache.commons.math3.util"><span class="strong">MultidimensionalCounter.Iterator</span></a> - Class in <a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a></dt>
<dd>
<div class="block">Perform iteration over the multidimensional counter.</div>
</dd>
<dt><a href="./org/apache/commons/math3/exception/MultiDimensionMismatchException.html" title="class in org.apache.commons.math3.exception"><span class="strong">MultiDimensionMismatchException</span></a> - Exception in <a href="./org/apache/commons/math3/exception/package-summary.html">org.apache.commons.math3.exception</a></dt>
<dd>
<div class="block">Exception to be thrown when two sets of dimensions differ.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MultiDimensionMismatchException.html#MultiDimensionMismatchException(java.lang.Integer[], java.lang.Integer[])">MultiDimensionMismatchException(Integer[], Integer[])</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MultiDimensionMismatchException.html" title="class in org.apache.commons.math3.exception">MultiDimensionMismatchException</a></dt>
<dd>
<div class="block">Construct an exception from the mismatched dimensions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/MultiDimensionMismatchException.html#MultiDimensionMismatchException(org.apache.commons.math3.exception.util.Localizable, java.lang.Integer[], java.lang.Integer[])">MultiDimensionMismatchException(Localizable, Integer[], Integer[])</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/MultiDimensionMismatchException.html" title="class in org.apache.commons.math3.exception">MultiDimensionMismatchException</a></dt>
<dd>
<div class="block">Construct an exception from the mismatched dimensions.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/MultiDirectionalSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv"><span class="strong">MultiDirectionalSimplex</span></a> - Class in <a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/package-summary.html">org.apache.commons.math3.optim.nonlinear.scalar.noderiv</a></dt>
<dd>
<div class="block">This class implements the multi-directional direct search method.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/MultiDirectionalSimplex.html#MultiDirectionalSimplex(int)">MultiDirectionalSimplex(int)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/MultiDirectionalSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">MultiDirectionalSimplex</a></dt>
<dd>
<div class="block">Build a multi-directional simplex with default coefficients.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/MultiDirectionalSimplex.html#MultiDirectionalSimplex(int, double)">MultiDirectionalSimplex(int, double)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/MultiDirectionalSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">MultiDirectionalSimplex</a></dt>
<dd>
<div class="block">Build a multi-directional simplex with default coefficients.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/MultiDirectionalSimplex.html#MultiDirectionalSimplex(int, double, double)">MultiDirectionalSimplex(int, double, double)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/MultiDirectionalSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">MultiDirectionalSimplex</a></dt>
<dd>
<div class="block">Build a multi-directional simplex with specified coefficients.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/MultiDirectionalSimplex.html#MultiDirectionalSimplex(int, double, double, double)">MultiDirectionalSimplex(int, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/MultiDirectionalSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">MultiDirectionalSimplex</a></dt>
<dd>
<div class="block">Build a multi-directional simplex with specified coefficients.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/MultiDirectionalSimplex.html#MultiDirectionalSimplex(double[])">MultiDirectionalSimplex(double[])</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/MultiDirectionalSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">MultiDirectionalSimplex</a></dt>
<dd>
<div class="block">Build a multi-directional simplex with default coefficients.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/MultiDirectionalSimplex.html#MultiDirectionalSimplex(double[], double, double)">MultiDirectionalSimplex(double[], double, double)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/MultiDirectionalSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">MultiDirectionalSimplex</a></dt>
<dd>
<div class="block">Build a multi-directional simplex with specified coefficients.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/MultiDirectionalSimplex.html#MultiDirectionalSimplex(double[][])">MultiDirectionalSimplex(double[][])</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/MultiDirectionalSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">MultiDirectionalSimplex</a></dt>
<dd>
<div class="block">Build a multi-directional simplex with default coefficients.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/MultiDirectionalSimplex.html#MultiDirectionalSimplex(double[][], double, double)">MultiDirectionalSimplex(double[][], double, double)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/MultiDirectionalSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">MultiDirectionalSimplex</a></dt>
<dd>
<div class="block">Build a multi-directional simplex with specified coefficients.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/direct/MultiDirectionalSimplex.html" title="class in org.apache.commons.math3.optimization.direct"><span class="strong">MultiDirectionalSimplex</span></a> - Class in <a href="./org/apache/commons/math3/optimization/direct/package-summary.html">org.apache.commons.math3.optimization.direct</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/MultiDirectionalSimplex.html#MultiDirectionalSimplex(int)">MultiDirectionalSimplex(int)</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/MultiDirectionalSimplex.html" title="class in org.apache.commons.math3.optimization.direct">MultiDirectionalSimplex</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a multi-directional simplex with default coefficients.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/MultiDirectionalSimplex.html#MultiDirectionalSimplex(int, double)">MultiDirectionalSimplex(int, double)</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/MultiDirectionalSimplex.html" title="class in org.apache.commons.math3.optimization.direct">MultiDirectionalSimplex</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a multi-directional simplex with default coefficients.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/MultiDirectionalSimplex.html#MultiDirectionalSimplex(int, double, double)">MultiDirectionalSimplex(int, double, double)</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/MultiDirectionalSimplex.html" title="class in org.apache.commons.math3.optimization.direct">MultiDirectionalSimplex</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a multi-directional simplex with specified coefficients.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/MultiDirectionalSimplex.html#MultiDirectionalSimplex(int, double, double, double)">MultiDirectionalSimplex(int, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/MultiDirectionalSimplex.html" title="class in org.apache.commons.math3.optimization.direct">MultiDirectionalSimplex</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a multi-directional simplex with specified coefficients.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/MultiDirectionalSimplex.html#MultiDirectionalSimplex(double[])">MultiDirectionalSimplex(double[])</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/MultiDirectionalSimplex.html" title="class in org.apache.commons.math3.optimization.direct">MultiDirectionalSimplex</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a multi-directional simplex with default coefficients.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/MultiDirectionalSimplex.html#MultiDirectionalSimplex(double[], double, double)">MultiDirectionalSimplex(double[], double, double)</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/MultiDirectionalSimplex.html" title="class in org.apache.commons.math3.optimization.direct">MultiDirectionalSimplex</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a multi-directional simplex with specified coefficients.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/MultiDirectionalSimplex.html#MultiDirectionalSimplex(double[][])">MultiDirectionalSimplex(double[][])</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/MultiDirectionalSimplex.html" title="class in org.apache.commons.math3.optimization.direct">MultiDirectionalSimplex</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a multi-directional simplex with default coefficients.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/MultiDirectionalSimplex.html#MultiDirectionalSimplex(double[][], double, double)">MultiDirectionalSimplex(double[][], double, double)</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/MultiDirectionalSimplex.html" title="class in org.apache.commons.math3.optimization.direct">MultiDirectionalSimplex</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a multi-directional simplex with specified coefficients.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/clustering/MultiKMeansPlusPlusClusterer.html" title="class in org.apache.commons.math3.ml.clustering"><span class="strong">MultiKMeansPlusPlusClusterer</span></a>&lt;<a href="./org/apache/commons/math3/ml/clustering/MultiKMeansPlusPlusClusterer.html" title="type parameter in MultiKMeansPlusPlusClusterer">T</a> extends <a href="./org/apache/commons/math3/ml/clustering/Clusterable.html" title="interface in org.apache.commons.math3.ml.clustering">Clusterable</a>&gt; - Class in <a href="./org/apache/commons/math3/ml/clustering/package-summary.html">org.apache.commons.math3.ml.clustering</a></dt>
<dd>
<div class="block">A wrapper around a k-means++ clustering algorithm which performs multiple trials
 and returns the best solution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/MultiKMeansPlusPlusClusterer.html#MultiKMeansPlusPlusClusterer(org.apache.commons.math3.ml.clustering.KMeansPlusPlusClusterer, int)">MultiKMeansPlusPlusClusterer(KMeansPlusPlusClusterer&lt;T&gt;, int)</a></span> - Constructor for class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/MultiKMeansPlusPlusClusterer.html" title="class in org.apache.commons.math3.ml.clustering">MultiKMeansPlusPlusClusterer</a></dt>
<dd>
<div class="block">Build a clusterer.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/MultiKMeansPlusPlusClusterer.html#MultiKMeansPlusPlusClusterer(org.apache.commons.math3.ml.clustering.KMeansPlusPlusClusterer, int, org.apache.commons.math3.ml.clustering.evaluation.ClusterEvaluator)">MultiKMeansPlusPlusClusterer(KMeansPlusPlusClusterer&lt;T&gt;, int, ClusterEvaluator&lt;T&gt;)</a></span> - Constructor for class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/MultiKMeansPlusPlusClusterer.html" title="class in org.apache.commons.math3.ml.clustering">MultiKMeansPlusPlusClusterer</a></dt>
<dd>
<div class="block">Build a clusterer.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/regression/MultipleLinearRegression.html" title="interface in org.apache.commons.math3.stat.regression"><span class="strong">MultipleLinearRegression</span></a> - Interface in <a href="./org/apache/commons/math3/stat/regression/package-summary.html">org.apache.commons.math3.stat.regression</a></dt>
<dd>
<div class="block">The multiple linear regression can be represented in matrix-notation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#MULTIPLICATIVE_MODE">MULTIPLICATIVE_MODE</a></span> - Static variable in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1. Please use <a href="./org/apache/commons/math3/util/ResizableDoubleArray.ExpansionMode.html#MULTIPLICATIVE"><code>ResizableDoubleArray.ExpansionMode.MULTIPLICATIVE</code></a> instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#multiply(int)">multiply(int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Compute n &times; this.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#multiply(double)">multiply(double)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">'&times;' operator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#multiply(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">multiply(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Compute this &times; a.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#multiply(double[], int, double[], int, double[], int)">multiply(double[], int, double[], int, double[], int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Perform multiplication of two derivative structures.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#multiply(org.apache.commons.math3.analysis.differentiation.SparseGradient)">multiply(SparseGradient)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Compute this &times; a.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#multiply(double)">multiply(double)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">'&times;' operator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#multiply(int)">multiply(int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Compute n &times; this.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Multiply.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Multiply</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Multiply the two operands.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Multiply.html#Multiply()">Multiply()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Multiply.html" title="class in org.apache.commons.math3.analysis.function">Multiply</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/FunctionUtils.html#multiply(org.apache.commons.math3.analysis.UnivariateFunction...)">multiply(UnivariateFunction...)</a></span> - Static method in class org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/FunctionUtils.html" title="class in org.apache.commons.math3.analysis">FunctionUtils</a></dt>
<dd>
<div class="block">Multiplies functions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/FunctionUtils.html#multiply(org.apache.commons.math3.analysis.differentiation.UnivariateDifferentiableFunction...)">multiply(UnivariateDifferentiableFunction...)</a></span> - Static method in class org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/FunctionUtils.html" title="class in org.apache.commons.math3.analysis">FunctionUtils</a></dt>
<dd>
<div class="block">Multiplies functions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/FunctionUtils.html#multiply(org.apache.commons.math3.analysis.DifferentiableUnivariateFunction...)">multiply(DifferentiableUnivariateFunction...)</a></span> - Static method in class org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/FunctionUtils.html" title="class in org.apache.commons.math3.analysis">FunctionUtils</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1 replaced by <a href="./org/apache/commons/math3/analysis/FunctionUtils.html#multiply(org.apache.commons.math3.analysis.differentiation.UnivariateDifferentiableFunction...)"><code>FunctionUtils.multiply(UnivariateDifferentiableFunction...)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.html#multiply(org.apache.commons.math3.analysis.polynomials.PolynomialFunction)">multiply(PolynomialFunction)</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunction</a></dt>
<dd>
<div class="block">Multiply the instance by a polynomial.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#multiply(org.apache.commons.math3.complex.Complex)">multiply(Complex)</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Returns a <code>Complex</code> whose value is <code>this * factor</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#multiply(int)">multiply(int)</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Returns a <code>Complex</code> whose value is <code>this * factor</code>, with <code>factor</code>
 interpreted as a integer number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#multiply(double)">multiply(double)</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Returns a <code>Complex</code> whose value is <code>this * factor</code>, with <code>factor</code>
 interpreted as a real number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Quaternion.html#multiply(org.apache.commons.math3.complex.Quaternion, org.apache.commons.math3.complex.Quaternion)">multiply(Quaternion, Quaternion)</a></span> - Static method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex">Quaternion</a></dt>
<dd>
<div class="block">Returns the Hamilton product of two quaternions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Quaternion.html#multiply(org.apache.commons.math3.complex.Quaternion)">multiply(Quaternion)</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex">Quaternion</a></dt>
<dd>
<div class="block">Returns the Hamilton product of the instance by a quaternion.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Quaternion.html#multiply(double)">multiply(double)</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex">Quaternion</a></dt>
<dd>
<div class="block">Multiplies the instance by a scalar.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#multiply(org.apache.commons.math3.dfp.Dfp)">multiply(Dfp)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Multiply this by x.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#multiply(int)">multiply(int)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Multiply this by a single digit x.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#multiply(double)">multiply(double)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">'&times;' operator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/FieldElement.html#multiply(int)">multiply(int)</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/FieldElement.html" title="interface in org.apache.commons.math3">FieldElement</a></dt>
<dd>
<div class="block">Compute n &times; this.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/FieldElement.html#multiply(T)">multiply(T)</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/FieldElement.html" title="interface in org.apache.commons.math3">FieldElement</a></dt>
<dd>
<div class="block">Compute this &times; a.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#multiply(java.math.BigInteger)">multiply(BigInteger)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Multiplies the value of this fraction by the passed
 <code>BigInteger</code>, returning the result in reduced form.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#multiply(int)">multiply(int)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Multiply the value of this fraction by the passed <tt>int</tt>, returning
 the result in reduced form.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#multiply(long)">multiply(long)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Multiply the value of this fraction by the passed <tt>long</tt>,
 returning the result in reduced form.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#multiply(org.apache.commons.math3.fraction.BigFraction)">multiply(BigFraction)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Multiplies the value of this fraction by another, returning the result in
 reduced form.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#multiply(org.apache.commons.math3.fraction.Fraction)">multiply(Fraction)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">Multiplies the value of this fraction by another, returning the
 result in reduced form.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#multiply(int)">multiply(int)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">Multiply the fraction by an integer.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#multiply(org.apache.commons.math3.linear.FieldMatrix)">multiply(FieldMatrix&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Postmultiply this matrix by <code>m</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#multiply(org.apache.commons.math3.linear.RealMatrix)">multiply(RealMatrix)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Returns the result of postmultiplying <code>this</code> by <code>m</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html#multiply(org.apache.commons.math3.linear.Array2DRowFieldMatrix)">multiply(Array2DRowFieldMatrix&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowFieldMatrix</a></dt>
<dd>
<div class="block">Postmultiplying this matrix by <code>m</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html#multiply(org.apache.commons.math3.linear.Array2DRowRealMatrix)">multiply(Array2DRowRealMatrix)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowRealMatrix</a></dt>
<dd>
<div class="block">Returns the result of postmultiplying <code>this</code> by <code>m</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#multiply(org.apache.commons.math3.linear.FieldMatrix)">multiply(FieldMatrix&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Postmultiply this matrix by <code>m</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#multiply(org.apache.commons.math3.linear.BlockFieldMatrix)">multiply(BlockFieldMatrix&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Returns the result of postmultiplying <code>this</code> by <code>m</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#multiply(org.apache.commons.math3.linear.RealMatrix)">multiply(RealMatrix)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Returns the result of postmultiplying <code>this</code> by <code>m</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#multiply(org.apache.commons.math3.linear.BlockRealMatrix)">multiply(BlockRealMatrix)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Returns the result of postmultiplying this by <code>m</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DiagonalMatrix.html#multiply(org.apache.commons.math3.linear.DiagonalMatrix)">multiply(DiagonalMatrix)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DiagonalMatrix.html" title="class in org.apache.commons.math3.linear">DiagonalMatrix</a></dt>
<dd>
<div class="block">Returns the result of postmultiplying <code>this</code> by <code>m</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DiagonalMatrix.html#multiply(org.apache.commons.math3.linear.RealMatrix)">multiply(RealMatrix)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DiagonalMatrix.html" title="class in org.apache.commons.math3.linear">DiagonalMatrix</a></dt>
<dd>
<div class="block">Returns the result of postmultiplying <code>this</code> by <code>m</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#multiply(org.apache.commons.math3.linear.FieldMatrix)">multiply(FieldMatrix&lt;T&gt;)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Postmultiply this matrix by <code>m</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealMatrix.html#multiply(org.apache.commons.math3.linear.RealMatrix)">multiply(RealMatrix)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealMatrix.html" title="class in org.apache.commons.math3.linear">OpenMapRealMatrix</a></dt>
<dd>
<div class="block">Returns the result of postmultiplying <code>this</code> by <code>m</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealMatrix.html#multiply(org.apache.commons.math3.linear.OpenMapRealMatrix)">multiply(OpenMapRealMatrix)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealMatrix.html" title="class in org.apache.commons.math3.linear">OpenMapRealMatrix</a></dt>
<dd>
<div class="block">Postmultiply this matrix by <code>m</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#multiply(org.apache.commons.math3.linear.RealMatrix)">multiply(RealMatrix)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Returns the result of postmultiplying <code>this</code> by <code>m</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#multiply(double)">multiply(double)</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">'&times;' operator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#multiply(org.apache.commons.math3.util.BigReal)">multiply(BigReal)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dd>
<div class="block">Compute this &times; a.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#multiply(int)">multiply(int)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dd>
<div class="block">Compute n &times; this.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#multiply(org.apache.commons.math3.util.Decimal64)">multiply(Decimal64)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Compute this &times; a.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#multiply(int)">multiply(int)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Compute n &times; this.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#multiply(double)">multiply(double)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">'&times;' operator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#multiplyEntry(int, int, T)">multiplyEntry(int, int, T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Change an entry in the specified row and column.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#multiplyEntry(int, int, double)">multiplyEntry(int, int, double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Multiplies (in place) the specified entry of <code>this</code> matrix by the
 specified value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html#multiplyEntry(int, int, T)">multiplyEntry(int, int, T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowFieldMatrix</a></dt>
<dd>
<div class="block">Change an entry in the specified row and column.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html#multiplyEntry(int, int, double)">multiplyEntry(int, int, double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowRealMatrix</a></dt>
<dd>
<div class="block">Multiplies (in place) the specified entry of <code>this</code> matrix by the
 specified value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#multiplyEntry(int, int, T)">multiplyEntry(int, int, T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Change an entry in the specified row and column.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#multiplyEntry(int, int, double)">multiplyEntry(int, int, double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Multiplies (in place) the specified entry of <code>this</code> matrix by the
 specified value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DiagonalMatrix.html#multiplyEntry(int, int, double)">multiplyEntry(int, int, double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DiagonalMatrix.html" title="class in org.apache.commons.math3.linear">DiagonalMatrix</a></dt>
<dd>
<div class="block">Multiplies (in place) the specified entry of <code>this</code> matrix by the
 specified value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#multiplyEntry(int, int, T)">multiplyEntry(int, int, T)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Change an entry in the specified row and column.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealMatrix.html#multiplyEntry(int, int, double)">multiplyEntry(int, int, double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealMatrix.html" title="class in org.apache.commons.math3.linear">OpenMapRealMatrix</a></dt>
<dd>
<div class="block">Multiplies (in place) the specified entry of <code>this</code> matrix by the
 specified value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#multiplyEntry(int, int, double)">multiplyEntry(int, int, double)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Multiplies (in place) the specified entry of <code>this</code> matrix by the
 specified value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldMatrix.html#multiplyEntry(int, int, T)">multiplyEntry(int, int, T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldMatrix.html" title="class in org.apache.commons.math3.linear">SparseFieldMatrix</a></dt>
<dd>
<div class="block">Change an entry in the specified row and column.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#multiplyInPlace(org.apache.commons.math3.analysis.differentiation.SparseGradient)">multiplyInPlace(SparseGradient)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Multiply in place.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/scalar/MultiStartMultivariateOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar"><span class="strong">MultiStartMultivariateOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optim/nonlinear/scalar/package-summary.html">org.apache.commons.math3.optim.nonlinear.scalar</a></dt>
<dd>
<div class="block">Multi-start optimizer.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/MultiStartMultivariateOptimizer.html#MultiStartMultivariateOptimizer(org.apache.commons.math3.optim.nonlinear.scalar.MultivariateOptimizer, int, org.apache.commons.math3.random.RandomVectorGenerator)">MultiStartMultivariateOptimizer(MultivariateOptimizer, int, RandomVectorGenerator)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/MultiStartMultivariateOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar">MultiStartMultivariateOptimizer</a></dt>
<dd>
<div class="block">Create a multi-start optimizer from a single-start optimizer.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/vector/MultiStartMultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector"><span class="strong">MultiStartMultivariateVectorOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optim/nonlinear/vector/package-summary.html">org.apache.commons.math3.optim.nonlinear.vector</a></dt>
<dd>
<div class="block">Multi-start optimizer for a (vector) model function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/MultiStartMultivariateVectorOptimizer.html#MultiStartMultivariateVectorOptimizer(org.apache.commons.math3.optim.nonlinear.vector.MultivariateVectorOptimizer, int, org.apache.commons.math3.random.RandomVectorGenerator)">MultiStartMultivariateVectorOptimizer(MultivariateVectorOptimizer, int, RandomVectorGenerator)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.vector.<a href="./org/apache/commons/math3/optim/nonlinear/vector/MultiStartMultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector">MultiStartMultivariateVectorOptimizer</a></dt>
<dd>
<div class="block">Create a multi-start optimizer from a single-start optimizer.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/univariate/MultiStartUnivariateOptimizer.html" title="class in org.apache.commons.math3.optim.univariate"><span class="strong">MultiStartUnivariateOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optim/univariate/package-summary.html">org.apache.commons.math3.optim.univariate</a></dt>
<dd>
<div class="block">Special implementation of the <a href="./org/apache/commons/math3/optim/univariate/UnivariateOptimizer.html" title="class in org.apache.commons.math3.optim.univariate"><code>UnivariateOptimizer</code></a> interface
 adding multi-start features to an existing optimizer.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/MultiStartUnivariateOptimizer.html#MultiStartUnivariateOptimizer(org.apache.commons.math3.optim.univariate.UnivariateOptimizer, int, org.apache.commons.math3.random.RandomGenerator)">MultiStartUnivariateOptimizer(UnivariateOptimizer, int, RandomGenerator)</a></span> - Constructor for class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/MultiStartUnivariateOptimizer.html" title="class in org.apache.commons.math3.optim.univariate">MultiStartUnivariateOptimizer</a></dt>
<dd>
<div class="block">Create a multi-start optimizer from a single-start optimizer.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/MultistepIntegrator.html" title="class in org.apache.commons.math3.ode"><span class="strong">MultistepIntegrator</span></a> - Class in <a href="./org/apache/commons/math3/ode/package-summary.html">org.apache.commons.math3.ode</a></dt>
<dd>
<div class="block">This class is the base class for multistep integrators for Ordinary
 Differential Equations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/MultistepIntegrator.html#MultistepIntegrator(java.lang.String, int, int, double, double, double, double)">MultistepIntegrator(String, int, int, double, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/MultistepIntegrator.html" title="class in org.apache.commons.math3.ode">MultistepIntegrator</a></dt>
<dd>
<div class="block">Build a multistep integrator with the given stepsize bounds.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/MultistepIntegrator.html#MultistepIntegrator(java.lang.String, int, int, double, double, double[], double[])">MultistepIntegrator(String, int, int, double, double, double[], double[])</a></span> - Constructor for class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/MultistepIntegrator.html" title="class in org.apache.commons.math3.ode">MultistepIntegrator</a></dt>
<dd>
<div class="block">Build a multistep integrator with the given stepsize bounds.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/MultistepIntegrator.NordsieckTransformer.html" title="interface in org.apache.commons.math3.ode"><span class="strong">MultistepIntegrator.NordsieckTransformer</span></a> - Interface in <a href="./org/apache/commons/math3/ode/package-summary.html">org.apache.commons.math3.ode</a></dt>
<dd>
<div class="block">Transformer used to convert the first step to Nordsieck representation.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/differentiation/MultivariateDifferentiableFunction.html" title="interface in org.apache.commons.math3.analysis.differentiation"><span class="strong">MultivariateDifferentiableFunction</span></a> - Interface in <a href="./org/apache/commons/math3/analysis/differentiation/package-summary.html">org.apache.commons.math3.analysis.differentiation</a></dt>
<dd>
<div class="block">Extension of <a href="./org/apache/commons/math3/analysis/MultivariateFunction.html" title="interface in org.apache.commons.math3.analysis"><code>MultivariateFunction</code></a> representing a
 multivariate differentiable real function.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/MultivariateDifferentiableMultiStartOptimizer.html" title="class in org.apache.commons.math3.optimization"><span class="strong">MultivariateDifferentiableMultiStartOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optimization/package-summary.html">org.apache.commons.math3.optimization</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/MultivariateDifferentiableMultiStartOptimizer.html#MultivariateDifferentiableMultiStartOptimizer(org.apache.commons.math3.optimization.MultivariateDifferentiableOptimizer, int, org.apache.commons.math3.random.RandomVectorGenerator)">MultivariateDifferentiableMultiStartOptimizer(MultivariateDifferentiableOptimizer, int, RandomVectorGenerator)</a></span> - Constructor for class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/MultivariateDifferentiableMultiStartOptimizer.html" title="class in org.apache.commons.math3.optimization">MultivariateDifferentiableMultiStartOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Create a multi-start optimizer from a single-start optimizer.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/MultivariateDifferentiableOptimizer.html" title="interface in org.apache.commons.math3.optimization"><span class="strong">MultivariateDifferentiableOptimizer</span></a> - Interface in <a href="./org/apache/commons/math3/optimization/package-summary.html">org.apache.commons.math3.optimization</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/differentiation/MultivariateDifferentiableVectorFunction.html" title="interface in org.apache.commons.math3.analysis.differentiation"><span class="strong">MultivariateDifferentiableVectorFunction</span></a> - Interface in <a href="./org/apache/commons/math3/analysis/differentiation/package-summary.html">org.apache.commons.math3.analysis.differentiation</a></dt>
<dd>
<div class="block">Extension of <a href="./org/apache/commons/math3/analysis/MultivariateVectorFunction.html" title="interface in org.apache.commons.math3.analysis"><code>MultivariateVectorFunction</code></a> representing a
 multivariate differentiable vectorial function.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/MultivariateDifferentiableVectorMultiStartOptimizer.html" title="class in org.apache.commons.math3.optimization"><span class="strong">MultivariateDifferentiableVectorMultiStartOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optimization/package-summary.html">org.apache.commons.math3.optimization</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/MultivariateDifferentiableVectorMultiStartOptimizer.html#MultivariateDifferentiableVectorMultiStartOptimizer(org.apache.commons.math3.optimization.MultivariateDifferentiableVectorOptimizer, int, org.apache.commons.math3.random.RandomVectorGenerator)">MultivariateDifferentiableVectorMultiStartOptimizer(MultivariateDifferentiableVectorOptimizer, int, RandomVectorGenerator)</a></span> - Constructor for class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/MultivariateDifferentiableVectorMultiStartOptimizer.html" title="class in org.apache.commons.math3.optimization">MultivariateDifferentiableVectorMultiStartOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Create a multi-start optimizer from a single-start optimizer.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/MultivariateDifferentiableVectorOptimizer.html" title="interface in org.apache.commons.math3.optimization"><span class="strong">MultivariateDifferentiableVectorOptimizer</span></a> - Interface in <a href="./org/apache/commons/math3/optimization/package-summary.html">org.apache.commons.math3.optimization</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/MultivariateFunction.html" title="interface in org.apache.commons.math3.analysis"><span class="strong">MultivariateFunction</span></a> - Interface in <a href="./org/apache/commons/math3/analysis/package-summary.html">org.apache.commons.math3.analysis</a></dt>
<dd>
<div class="block">An interface representing a multivariate real function.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/scalar/MultivariateFunctionMappingAdapter.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar"><span class="strong">MultivariateFunctionMappingAdapter</span></a> - Class in <a href="./org/apache/commons/math3/optim/nonlinear/scalar/package-summary.html">org.apache.commons.math3.optim.nonlinear.scalar</a></dt>
<dd>
<div class="block">Adapter for mapping bounded <a href="./org/apache/commons/math3/analysis/MultivariateFunction.html" title="interface in org.apache.commons.math3.analysis"><code>MultivariateFunction</code></a> to unbounded ones.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/MultivariateFunctionMappingAdapter.html#MultivariateFunctionMappingAdapter(org.apache.commons.math3.analysis.MultivariateFunction, double[], double[])">MultivariateFunctionMappingAdapter(MultivariateFunction, double[], double[])</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/MultivariateFunctionMappingAdapter.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar">MultivariateFunctionMappingAdapter</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/direct/MultivariateFunctionMappingAdapter.html" title="class in org.apache.commons.math3.optimization.direct"><span class="strong">MultivariateFunctionMappingAdapter</span></a> - Class in <a href="./org/apache/commons/math3/optimization/direct/package-summary.html">org.apache.commons.math3.optimization.direct</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/MultivariateFunctionMappingAdapter.html#MultivariateFunctionMappingAdapter(org.apache.commons.math3.analysis.MultivariateFunction, double[], double[])">MultivariateFunctionMappingAdapter(MultivariateFunction, double[], double[])</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/MultivariateFunctionMappingAdapter.html" title="class in org.apache.commons.math3.optimization.direct">MultivariateFunctionMappingAdapter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/scalar/MultivariateFunctionPenaltyAdapter.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar"><span class="strong">MultivariateFunctionPenaltyAdapter</span></a> - Class in <a href="./org/apache/commons/math3/optim/nonlinear/scalar/package-summary.html">org.apache.commons.math3.optim.nonlinear.scalar</a></dt>
<dd>
<div class="block">Adapter extending bounded <a href="./org/apache/commons/math3/analysis/MultivariateFunction.html" title="interface in org.apache.commons.math3.analysis"><code>MultivariateFunction</code></a> to an unbouded
 domain using a penalty function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/MultivariateFunctionPenaltyAdapter.html#MultivariateFunctionPenaltyAdapter(org.apache.commons.math3.analysis.MultivariateFunction, double[], double[], double, double[])">MultivariateFunctionPenaltyAdapter(MultivariateFunction, double[], double[], double, double[])</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/MultivariateFunctionPenaltyAdapter.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar">MultivariateFunctionPenaltyAdapter</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/direct/MultivariateFunctionPenaltyAdapter.html" title="class in org.apache.commons.math3.optimization.direct"><span class="strong">MultivariateFunctionPenaltyAdapter</span></a> - Class in <a href="./org/apache/commons/math3/optimization/direct/package-summary.html">org.apache.commons.math3.optimization.direct</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/MultivariateFunctionPenaltyAdapter.html#MultivariateFunctionPenaltyAdapter(org.apache.commons.math3.analysis.MultivariateFunction, double[], double[], double, double[])">MultivariateFunctionPenaltyAdapter(MultivariateFunction, double[], double[], double, double[])</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/MultivariateFunctionPenaltyAdapter.html" title="class in org.apache.commons.math3.optimization.direct">MultivariateFunctionPenaltyAdapter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/interpolation/MultivariateInterpolator.html" title="interface in org.apache.commons.math3.analysis.interpolation"><span class="strong">MultivariateInterpolator</span></a> - Interface in <a href="./org/apache/commons/math3/analysis/interpolation/package-summary.html">org.apache.commons.math3.analysis.interpolation</a></dt>
<dd>
<div class="block">Interface representing a univariate real interpolating function.</div>
</dd>
<dt><a href="./org/apache/commons/math3/fitting/leastsquares/MultivariateJacobianFunction.html" title="interface in org.apache.commons.math3.fitting.leastsquares"><span class="strong">MultivariateJacobianFunction</span></a> - Interface in <a href="./org/apache/commons/math3/fitting/leastsquares/package-summary.html">org.apache.commons.math3.fitting.leastsquares</a></dt>
<dd>
<div class="block">A interface for functions that compute a vector of values and can compute their
 derivatives (Jacobian).</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/MultivariateMatrixFunction.html" title="interface in org.apache.commons.math3.analysis"><span class="strong">MultivariateMatrixFunction</span></a> - Interface in <a href="./org/apache/commons/math3/analysis/package-summary.html">org.apache.commons.math3.analysis</a></dt>
<dd>
<div class="block">An interface representing a multivariate matrix function.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/MultivariateMultiStartOptimizer.html" title="class in org.apache.commons.math3.optimization"><span class="strong">MultivariateMultiStartOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optimization/package-summary.html">org.apache.commons.math3.optimization</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/MultivariateMultiStartOptimizer.html#MultivariateMultiStartOptimizer(org.apache.commons.math3.optimization.MultivariateOptimizer, int, org.apache.commons.math3.random.RandomVectorGenerator)">MultivariateMultiStartOptimizer(MultivariateOptimizer, int, RandomVectorGenerator)</a></span> - Constructor for class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/MultivariateMultiStartOptimizer.html" title="class in org.apache.commons.math3.optimization">MultivariateMultiStartOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Create a multi-start optimizer from a single-start optimizer.</div>
</dd>
<dt><a href="./org/apache/commons/math3/distribution/MultivariateNormalDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">MultivariateNormalDistribution</span></a> - Class in <a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a></dt>
<dd>
<div class="block">Implementation of the multivariate normal (Gaussian) distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/MultivariateNormalDistribution.html#MultivariateNormalDistribution(double[], double[][])">MultivariateNormalDistribution(double[], double[][])</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/MultivariateNormalDistribution.html" title="class in org.apache.commons.math3.distribution">MultivariateNormalDistribution</a></dt>
<dd>
<div class="block">Creates a multivariate normal distribution with the given mean vector and
 covariance matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/MultivariateNormalDistribution.html#MultivariateNormalDistribution(org.apache.commons.math3.random.RandomGenerator, double[], double[][])">MultivariateNormalDistribution(RandomGenerator, double[], double[][])</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/MultivariateNormalDistribution.html" title="class in org.apache.commons.math3.distribution">MultivariateNormalDistribution</a></dt>
<dd>
<div class="block">Creates a multivariate normal distribution with the given mean vector and
 covariance matrix.</div>
</dd>
<dt><a href="./org/apache/commons/math3/distribution/fitting/MultivariateNormalMixtureExpectationMaximization.html" title="class in org.apache.commons.math3.distribution.fitting"><span class="strong">MultivariateNormalMixtureExpectationMaximization</span></a> - Class in <a href="./org/apache/commons/math3/distribution/fitting/package-summary.html">org.apache.commons.math3.distribution.fitting</a></dt>
<dd>
<div class="block">Expectation-Maximization</a> algorithm for fitting the parameters of
 multivariate normal mixture model distributions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/fitting/MultivariateNormalMixtureExpectationMaximization.html#MultivariateNormalMixtureExpectationMaximization(double[][])">MultivariateNormalMixtureExpectationMaximization(double[][])</a></span> - Constructor for class org.apache.commons.math3.distribution.fitting.<a href="./org/apache/commons/math3/distribution/fitting/MultivariateNormalMixtureExpectationMaximization.html" title="class in org.apache.commons.math3.distribution.fitting">MultivariateNormalMixtureExpectationMaximization</a></dt>
<dd>
<div class="block">Creates an object to fit a multivariate normal mixture model to data.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/scalar/MultivariateOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar"><span class="strong">MultivariateOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optim/nonlinear/scalar/package-summary.html">org.apache.commons.math3.optim.nonlinear.scalar</a></dt>
<dd>
<div class="block">Base class for a multivariate scalar function optimizer.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/MultivariateOptimizer.html#MultivariateOptimizer(org.apache.commons.math3.optim.ConvergenceChecker)">MultivariateOptimizer(ConvergenceChecker&lt;PointValuePair&gt;)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/MultivariateOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar">MultivariateOptimizer</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optimization/MultivariateOptimizer.html" title="interface in org.apache.commons.math3.optimization"><span class="strong">MultivariateOptimizer</span></a> - Interface in <a href="./org/apache/commons/math3/optimization/package-summary.html">org.apache.commons.math3.optimization</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/distribution/MultivariateRealDistribution.html" title="interface in org.apache.commons.math3.distribution"><span class="strong">MultivariateRealDistribution</span></a> - Interface in <a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a></dt>
<dd>
<div class="block">Base interface for multivariate distributions on the reals.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive"><span class="strong">MultivariateSummaryStatistics</span></a> - Class in <a href="./org/apache/commons/math3/stat/descriptive/package-summary.html">org.apache.commons.math3.stat.descriptive</a></dt>
<dd>
<div class="block">Computes summary statistics for a stream of n-tuples added using the
 <a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#addValue(double[])"><code>addValue</code></a> method.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#MultivariateSummaryStatistics(int, boolean)">MultivariateSummaryStatistics(int, boolean)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">MultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Construct a MultivariateSummaryStatistics instance</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/MultivariateVectorFunction.html" title="interface in org.apache.commons.math3.analysis"><span class="strong">MultivariateVectorFunction</span></a> - Interface in <a href="./org/apache/commons/math3/analysis/package-summary.html">org.apache.commons.math3.analysis</a></dt>
<dd>
<div class="block">An interface representing a multivariate vectorial function.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/vector/MultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector"><span class="strong">MultivariateVectorOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optim/nonlinear/vector/package-summary.html">org.apache.commons.math3.optim.nonlinear.vector</a></dt>
<dd>
<div class="block">Base class for a multivariate vector function optimizer.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/MultivariateVectorOptimizer.html#MultivariateVectorOptimizer(org.apache.commons.math3.optim.ConvergenceChecker)">MultivariateVectorOptimizer(ConvergenceChecker&lt;PointVectorValuePair&gt;)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.vector.<a href="./org/apache/commons/math3/optim/nonlinear/vector/MultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector">MultivariateVectorOptimizer</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/BinaryMutation.html#mutate(org.apache.commons.math3.genetics.Chromosome)">mutate(Chromosome)</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/BinaryMutation.html" title="class in org.apache.commons.math3.genetics">BinaryMutation</a></dt>
<dd>
<div class="block">Mutate the given chromosome.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/MutationPolicy.html#mutate(org.apache.commons.math3.genetics.Chromosome)">mutate(Chromosome)</a></span> - Method in interface org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/MutationPolicy.html" title="interface in org.apache.commons.math3.genetics">MutationPolicy</a></dt>
<dd>
<div class="block">Mutate the given chromosome.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/RandomKeyMutation.html#mutate(org.apache.commons.math3.genetics.Chromosome)">mutate(Chromosome)</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/RandomKeyMutation.html" title="class in org.apache.commons.math3.genetics">RandomKeyMutation</a></dt>
<dd>
<div class="block">Mutate the given chromosome.</div>
</dd>
<dt><a href="./org/apache/commons/math3/genetics/MutationPolicy.html" title="interface in org.apache.commons.math3.genetics"><span class="strong">MutationPolicy</span></a> - Interface in <a href="./org/apache/commons/math3/genetics/package-summary.html">org.apache.commons.math3.genetics</a></dt>
<dd>
<div class="block">Algorithm used to mutate a chromosome.</div>
</dd>
</dl>
<a name="_N_">
<!--   -->
</a>
<h2 class="title">N</h2>
<dl>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#NaN">NaN</a></span> - Static variable in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">A complex number representing "NaN + NaNi"</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#NaN">NaN</a></span> - Static variable in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">A vector with all coordinates set to NaN.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#NaN">NaN</a></span> - Static variable in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">A vector with all coordinates set to NaN.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#NaN">NaN</a></span> - Static variable in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">A vector with all coordinates set to NaN.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/S1Point.html#NaN">NaN</a></span> - Static variable in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/S1Point.html" title="class in org.apache.commons.math3.geometry.spherical.oned">S1Point</a></dt>
<dd>
<div class="block">A vector with all coordinates set to NaN.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html#NaN">NaN</a></span> - Static variable in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html" title="class in org.apache.commons.math3.geometry.spherical.twod">S2Point</a></dt>
<dd>
<div class="block">A vector with all coordinates set to NaN.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#NAN">NAN</a></span> - Static variable in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">The constant value of <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Double.html?is-external=true#NaN" title="class or interface in java.lang"><code>Double.NaN</code></a> as a <code>Decimal64</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#nans">nans</a></span> - Variable in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Indicator for non-finite / non-number values.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/ranking/NaNStrategy.html" title="enum in org.apache.commons.math3.stat.ranking"><span class="strong">NaNStrategy</span></a> - Enum in <a href="./org/apache/commons/math3/stat/ranking/package-summary.html">org.apache.commons.math3.stat.ranking</a></dt>
<dd>
<div class="block">Strategies for handling NaN values in rank transformations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#natural(int)">natural(int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Returns an array representing the natural number <code>n</code>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/ranking/NaturalRanking.html" title="class in org.apache.commons.math3.stat.ranking"><span class="strong">NaturalRanking</span></a> - Class in <a href="./org/apache/commons/math3/stat/ranking/package-summary.html">org.apache.commons.math3.stat.ranking</a></dt>
<dd>
<div class="block"> Ranking based on the natural ordering on doubles.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/ranking/NaturalRanking.html#NaturalRanking()">NaturalRanking()</a></span> - Constructor for class org.apache.commons.math3.stat.ranking.<a href="./org/apache/commons/math3/stat/ranking/NaturalRanking.html" title="class in org.apache.commons.math3.stat.ranking">NaturalRanking</a></dt>
<dd>
<div class="block">Create a NaturalRanking with default strategies for handling ties and NaNs.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/ranking/NaturalRanking.html#NaturalRanking(org.apache.commons.math3.stat.ranking.TiesStrategy)">NaturalRanking(TiesStrategy)</a></span> - Constructor for class org.apache.commons.math3.stat.ranking.<a href="./org/apache/commons/math3/stat/ranking/NaturalRanking.html" title="class in org.apache.commons.math3.stat.ranking">NaturalRanking</a></dt>
<dd>
<div class="block">Create a NaturalRanking with the given TiesStrategy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/ranking/NaturalRanking.html#NaturalRanking(org.apache.commons.math3.stat.ranking.NaNStrategy)">NaturalRanking(NaNStrategy)</a></span> - Constructor for class org.apache.commons.math3.stat.ranking.<a href="./org/apache/commons/math3/stat/ranking/NaturalRanking.html" title="class in org.apache.commons.math3.stat.ranking">NaturalRanking</a></dt>
<dd>
<div class="block">Create a NaturalRanking with the given NaNStrategy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/ranking/NaturalRanking.html#NaturalRanking(org.apache.commons.math3.stat.ranking.NaNStrategy, org.apache.commons.math3.stat.ranking.TiesStrategy)">NaturalRanking(NaNStrategy, TiesStrategy)</a></span> - Constructor for class org.apache.commons.math3.stat.ranking.<a href="./org/apache/commons/math3/stat/ranking/NaturalRanking.html" title="class in org.apache.commons.math3.stat.ranking">NaturalRanking</a></dt>
<dd>
<div class="block">Create a NaturalRanking with the given NaNStrategy and TiesStrategy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/ranking/NaturalRanking.html#NaturalRanking(org.apache.commons.math3.random.RandomGenerator)">NaturalRanking(RandomGenerator)</a></span> - Constructor for class org.apache.commons.math3.stat.ranking.<a href="./org/apache/commons/math3/stat/ranking/NaturalRanking.html" title="class in org.apache.commons.math3.stat.ranking">NaturalRanking</a></dt>
<dd>
<div class="block">Create a NaturalRanking with TiesStrategy.RANDOM and the given
 RandomGenerator as the source of random data.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/ranking/NaturalRanking.html#NaturalRanking(org.apache.commons.math3.stat.ranking.NaNStrategy, org.apache.commons.math3.random.RandomGenerator)">NaturalRanking(NaNStrategy, RandomGenerator)</a></span> - Constructor for class org.apache.commons.math3.stat.ranking.<a href="./org/apache/commons/math3/stat/ranking/NaturalRanking.html" title="class in org.apache.commons.math3.stat.ranking">NaturalRanking</a></dt>
<dd>
<div class="block">Create a NaturalRanking with the given NaNStrategy, TiesStrategy.RANDOM
 and the given source of random data.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#negate()">negate()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Returns the additive inverse of <code>this</code> element.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#negate()">negate()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Returns the additive inverse of <code>this</code> element.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.html#negate()">negate()</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunction</a></dt>
<dd>
<div class="block">Negate the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#negate()">negate()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Returns a <code>Complex</code> whose value is <code>(-this)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#negate()">negate()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Returns a number that is this number with the sign bit reversed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/FieldElement.html#negate()">negate()</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/FieldElement.html" title="interface in org.apache.commons.math3">FieldElement</a></dt>
<dd>
<div class="block">Returns the additive inverse of <code>this</code> element.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#negate()">negate()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Return the additive inverse of this fraction, returning the result in
 reduced form.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#negate()">negate()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">Return the additive inverse of this fraction.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#negate()">negate()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Get the opposite of the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#negate()">negate()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Get the opposite of the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#negate()">negate()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Get the opposite of the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#negate()">negate()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Get the opposite of the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html#negate()">negate()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html" title="class in org.apache.commons.math3.geometry.spherical.twod">S2Point</a></dt>
<dd>
<div class="block">Get the opposite of the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/Vector.html#negate()">negate()</a></span> - Method in interface org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/Vector.html" title="interface in org.apache.commons.math3.geometry">Vector</a></dt>
<dd>
<div class="block">Get the opposite of the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#negate()">negate()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dd>
<div class="block">Returns the additive inverse of <code>this</code> element.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#negate()">negate()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Returns the additive inverse of <code>this</code> element.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#NEGATIVE_INFINITY">NEGATIVE_INFINITY</a></span> - Static variable in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">A vector with all coordinates set to negative infinity.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#NEGATIVE_INFINITY">NEGATIVE_INFINITY</a></span> - Static variable in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">A vector with all coordinates set to negative infinity.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#NEGATIVE_INFINITY">NEGATIVE_INFINITY</a></span> - Static variable in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">A vector with all coordinates set to negative infinity.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#NEGATIVE_INFINITY">NEGATIVE_INFINITY</a></span> - Static variable in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">The constant value of <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Double.html?is-external=true#NEGATIVE_INFINITY" title="class or interface in java.lang"><code>Double.NEGATIVE_INFINITY</code></a> as a
 <code>Decimal64</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#negativeOrNull()">negativeOrNull()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Check if instance is less than or equal to 0.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/neuralnet/sofm/NeighbourhoodSizeFunction.html" title="interface in org.apache.commons.math3.ml.neuralnet.sofm"><span class="strong">NeighbourhoodSizeFunction</span></a> - Interface in <a href="./org/apache/commons/math3/ml/neuralnet/sofm/package-summary.html">org.apache.commons.math3.ml.neuralnet.sofm</a></dt>
<dd>
<div class="block">Provides the network neighbourhood's size as a function of the
 number of calls already performed during the learning task.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/neuralnet/sofm/NeighbourhoodSizeFunctionFactory.html" title="class in org.apache.commons.math3.ml.neuralnet.sofm"><span class="strong">NeighbourhoodSizeFunctionFactory</span></a> - Class in <a href="./org/apache/commons/math3/ml/neuralnet/sofm/package-summary.html">org.apache.commons.math3.ml.neuralnet.sofm</a></dt>
<dd>
<div class="block">Factory for creating instances of <a href="./org/apache/commons/math3/ml/neuralnet/sofm/NeighbourhoodSizeFunction.html" title="interface in org.apache.commons.math3.ml.neuralnet.sofm"><code>NeighbourhoodSizeFunction</code></a>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/NelderMeadSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv"><span class="strong">NelderMeadSimplex</span></a> - Class in <a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/package-summary.html">org.apache.commons.math3.optim.nonlinear.scalar.noderiv</a></dt>
<dd>
<div class="block">This class implements the Nelder-Mead simplex algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/NelderMeadSimplex.html#NelderMeadSimplex(int)">NelderMeadSimplex(int)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/NelderMeadSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">NelderMeadSimplex</a></dt>
<dd>
<div class="block">Build a Nelder-Mead simplex with default coefficients.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/NelderMeadSimplex.html#NelderMeadSimplex(int, double)">NelderMeadSimplex(int, double)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/NelderMeadSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">NelderMeadSimplex</a></dt>
<dd>
<div class="block">Build a Nelder-Mead simplex with default coefficients.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/NelderMeadSimplex.html#NelderMeadSimplex(int, double, double, double, double, double)">NelderMeadSimplex(int, double, double, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/NelderMeadSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">NelderMeadSimplex</a></dt>
<dd>
<div class="block">Build a Nelder-Mead simplex with specified coefficients.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/NelderMeadSimplex.html#NelderMeadSimplex(int, double, double, double, double)">NelderMeadSimplex(int, double, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/NelderMeadSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">NelderMeadSimplex</a></dt>
<dd>
<div class="block">Build a Nelder-Mead simplex with specified coefficients.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/NelderMeadSimplex.html#NelderMeadSimplex(double[])">NelderMeadSimplex(double[])</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/NelderMeadSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">NelderMeadSimplex</a></dt>
<dd>
<div class="block">Build a Nelder-Mead simplex with default coefficients.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/NelderMeadSimplex.html#NelderMeadSimplex(double[], double, double, double, double)">NelderMeadSimplex(double[], double, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/NelderMeadSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">NelderMeadSimplex</a></dt>
<dd>
<div class="block">Build a Nelder-Mead simplex with specified coefficients.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/NelderMeadSimplex.html#NelderMeadSimplex(double[][])">NelderMeadSimplex(double[][])</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/NelderMeadSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">NelderMeadSimplex</a></dt>
<dd>
<div class="block">Build a Nelder-Mead simplex with default coefficients.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/NelderMeadSimplex.html#NelderMeadSimplex(double[][], double, double, double, double)">NelderMeadSimplex(double[][], double, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/NelderMeadSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">NelderMeadSimplex</a></dt>
<dd>
<div class="block">Build a Nelder-Mead simplex with specified coefficients.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/direct/NelderMeadSimplex.html" title="class in org.apache.commons.math3.optimization.direct"><span class="strong">NelderMeadSimplex</span></a> - Class in <a href="./org/apache/commons/math3/optimization/direct/package-summary.html">org.apache.commons.math3.optimization.direct</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/NelderMeadSimplex.html#NelderMeadSimplex(int)">NelderMeadSimplex(int)</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/NelderMeadSimplex.html" title="class in org.apache.commons.math3.optimization.direct">NelderMeadSimplex</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a Nelder-Mead simplex with default coefficients.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/NelderMeadSimplex.html#NelderMeadSimplex(int, double)">NelderMeadSimplex(int, double)</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/NelderMeadSimplex.html" title="class in org.apache.commons.math3.optimization.direct">NelderMeadSimplex</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a Nelder-Mead simplex with default coefficients.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/NelderMeadSimplex.html#NelderMeadSimplex(int, double, double, double, double, double)">NelderMeadSimplex(int, double, double, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/NelderMeadSimplex.html" title="class in org.apache.commons.math3.optimization.direct">NelderMeadSimplex</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a Nelder-Mead simplex with specified coefficients.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/NelderMeadSimplex.html#NelderMeadSimplex(int, double, double, double, double)">NelderMeadSimplex(int, double, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/NelderMeadSimplex.html" title="class in org.apache.commons.math3.optimization.direct">NelderMeadSimplex</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a Nelder-Mead simplex with specified coefficients.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/NelderMeadSimplex.html#NelderMeadSimplex(double[])">NelderMeadSimplex(double[])</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/NelderMeadSimplex.html" title="class in org.apache.commons.math3.optimization.direct">NelderMeadSimplex</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a Nelder-Mead simplex with default coefficients.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/NelderMeadSimplex.html#NelderMeadSimplex(double[], double, double, double, double)">NelderMeadSimplex(double[], double, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/NelderMeadSimplex.html" title="class in org.apache.commons.math3.optimization.direct">NelderMeadSimplex</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a Nelder-Mead simplex with specified coefficients.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/NelderMeadSimplex.html#NelderMeadSimplex(double[][])">NelderMeadSimplex(double[][])</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/NelderMeadSimplex.html" title="class in org.apache.commons.math3.optimization.direct">NelderMeadSimplex</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a Nelder-Mead simplex with default coefficients.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/NelderMeadSimplex.html#NelderMeadSimplex(double[][], double, double, double, double)">NelderMeadSimplex(double[][], double, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/NelderMeadSimplex.html" title="class in org.apache.commons.math3.optimization.direct">NelderMeadSimplex</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a Nelder-Mead simplex with specified coefficients.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/neuralnet/Network.html" title="class in org.apache.commons.math3.ml.neuralnet"><span class="strong">Network</span></a> - Class in <a href="./org/apache/commons/math3/ml/neuralnet/package-summary.html">org.apache.commons.math3.ml.neuralnet</a></dt>
<dd>
<div class="block">Neural network, composed of <a href="./org/apache/commons/math3/ml/neuralnet/Neuron.html" title="class in org.apache.commons.math3.ml.neuralnet"><code>Neuron</code></a> instances and the links
 between them.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/Network.html#Network(long, int)">Network(long, int)</a></span> - Constructor for class org.apache.commons.math3.ml.neuralnet.<a href="./org/apache/commons/math3/ml/neuralnet/Network.html" title="class in org.apache.commons.math3.ml.neuralnet">Network</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/ml/neuralnet/Network.NeuronIdentifierComparator.html" title="class in org.apache.commons.math3.ml.neuralnet"><span class="strong">Network.NeuronIdentifierComparator</span></a> - Class in <a href="./org/apache/commons/math3/ml/neuralnet/package-summary.html">org.apache.commons.math3.ml.neuralnet</a></dt>
<dd>
<div class="block">Comparator that prescribes an order of the neurons according
 to the increasing order of their identifier.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/Network.NeuronIdentifierComparator.html#Network.NeuronIdentifierComparator()">Network.NeuronIdentifierComparator()</a></span> - Constructor for class org.apache.commons.math3.ml.neuralnet.<a href="./org/apache/commons/math3/ml/neuralnet/Network.NeuronIdentifierComparator.html" title="class in org.apache.commons.math3.ml.neuralnet">Network.NeuronIdentifierComparator</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/ml/neuralnet/Neuron.html" title="class in org.apache.commons.math3.ml.neuralnet"><span class="strong">Neuron</span></a> - Class in <a href="./org/apache/commons/math3/ml/neuralnet/package-summary.html">org.apache.commons.math3.ml.neuralnet</a></dt>
<dd>
<div class="block">Describes a neuron element of a neural network.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/neuralnet/twod/NeuronSquareMesh2D.html" title="class in org.apache.commons.math3.ml.neuralnet.twod"><span class="strong">NeuronSquareMesh2D</span></a> - Class in <a href="./org/apache/commons/math3/ml/neuralnet/twod/package-summary.html">org.apache.commons.math3.ml.neuralnet.twod</a></dt>
<dd>
<div class="block">Neural network with the topology of a two-dimensional surface.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/twod/NeuronSquareMesh2D.html#NeuronSquareMesh2D(int, boolean, int, boolean, org.apache.commons.math3.ml.neuralnet.SquareNeighbourhood, org.apache.commons.math3.ml.neuralnet.FeatureInitializer[])">NeuronSquareMesh2D(int, boolean, int, boolean, SquareNeighbourhood, FeatureInitializer[])</a></span> - Constructor for class org.apache.commons.math3.ml.neuralnet.twod.<a href="./org/apache/commons/math3/ml/neuralnet/twod/NeuronSquareMesh2D.html" title="class in org.apache.commons.math3.ml.neuralnet.twod">NeuronSquareMesh2D</a></dt>
<dd>
<div class="block">Creates a two-dimensional network composed of square cells:
 Each neuron not located on the border of the mesh has four
 neurons linked to it.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/neuralnet/oned/NeuronString.html" title="class in org.apache.commons.math3.ml.neuralnet.oned"><span class="strong">NeuronString</span></a> - Class in <a href="./org/apache/commons/math3/ml/neuralnet/oned/package-summary.html">org.apache.commons.math3.ml.neuralnet.oned</a></dt>
<dd>
<div class="block">Neural network with the topology of a one-dimensional line.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/oned/NeuronString.html#NeuronString(int, boolean, org.apache.commons.math3.ml.neuralnet.FeatureInitializer[])">NeuronString(int, boolean, FeatureInitializer[])</a></span> - Constructor for class org.apache.commons.math3.ml.neuralnet.oned.<a href="./org/apache/commons/math3/ml/neuralnet/oned/NeuronString.html" title="class in org.apache.commons.math3.ml.neuralnet.oned">NeuronString</a></dt>
<dd>
<div class="block">Creates a one-dimensional network:
 Each neuron not located on the border of the mesh has two
 neurons linked to it.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/interpolation/NevilleInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation"><span class="strong">NevilleInterpolator</span></a> - Class in <a href="./org/apache/commons/math3/analysis/interpolation/package-summary.html">org.apache.commons.math3.analysis.interpolation</a></dt>
<dd>
<div class="block">Implements the <a href="http://mathworld.wolfram.com/NevillesAlgorithm.html">
 Neville's Algorithm</a> for interpolation of real univariate functions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/NevilleInterpolator.html#NevilleInterpolator()">NevilleInterpolator()</a></span> - Constructor for class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/NevilleInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">NevilleInterpolator</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/GLSMultipleLinearRegression.html#newCovarianceData(double[][])">newCovarianceData(double[][])</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/GLSMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">GLSMultipleLinearRegression</a></dt>
<dd>
<div class="block">Add the covariance data.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#newDfp()">newDfp()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Makes a <a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp"><code>Dfp</code></a> with a value of 0.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#newDfp(byte)">newDfp(byte)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Create an instance from a byte value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#newDfp(int)">newDfp(int)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Create an instance from an int value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#newDfp(long)">newDfp(long)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Create an instance from a long value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#newDfp(double)">newDfp(double)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Create an instance from a double value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#newDfp(org.apache.commons.math3.dfp.Dfp)">newDfp(Dfp)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Copy constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#newDfp(java.lang.String)">newDfp(String)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Create a <a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp"><code>Dfp</code></a> given a String representation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#newDfp(byte, byte)">newDfp(byte, byte)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Creates a <a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp"><code>Dfp</code></a> with a non-finite value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/AbstractListChromosome.html#newFixedLengthChromosome(java.util.List)">newFixedLengthChromosome(List&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/AbstractListChromosome.html" title="class in org.apache.commons.math3.genetics">AbstractListChromosome</a></dt>
<dd>
<div class="block">Creates a new instance of the same class as <code>this</code> is, with a given <code>arrayRepresentation</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#newInstance()">newInstance()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Create an instance with a value of 0.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#newInstance(byte)">newInstance(byte)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Create an instance from a byte value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#newInstance(int)">newInstance(int)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Create an instance from an int value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#newInstance(long)">newInstance(long)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Create an instance from a long value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#newInstance(double)">newInstance(double)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Create an instance from a double value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#newInstance(org.apache.commons.math3.dfp.Dfp)">newInstance(Dfp)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Create an instance by copying an existing one.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#newInstance(java.lang.String)">newInstance(String)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Create an instance from a String representation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#newInstance(byte, byte)">newInstance(byte, byte)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Creates an instance with a non-finite value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpDec.html#newInstance()">newInstance()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpDec.html" title="class in org.apache.commons.math3.dfp">DfpDec</a></dt>
<dd>
<div class="block">Create an instance with a value of 0.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpDec.html#newInstance(byte)">newInstance(byte)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpDec.html" title="class in org.apache.commons.math3.dfp">DfpDec</a></dt>
<dd>
<div class="block">Create an instance from a byte value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpDec.html#newInstance(int)">newInstance(int)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpDec.html" title="class in org.apache.commons.math3.dfp">DfpDec</a></dt>
<dd>
<div class="block">Create an instance from an int value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpDec.html#newInstance(long)">newInstance(long)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpDec.html" title="class in org.apache.commons.math3.dfp">DfpDec</a></dt>
<dd>
<div class="block">Create an instance from a long value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpDec.html#newInstance(double)">newInstance(double)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpDec.html" title="class in org.apache.commons.math3.dfp">DfpDec</a></dt>
<dd>
<div class="block">Create an instance from a double value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpDec.html#newInstance(org.apache.commons.math3.dfp.Dfp)">newInstance(Dfp)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpDec.html" title="class in org.apache.commons.math3.dfp">DfpDec</a></dt>
<dd>
<div class="block">Create an instance by copying an existing one.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpDec.html#newInstance(java.lang.String)">newInstance(String)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpDec.html" title="class in org.apache.commons.math3.dfp">DfpDec</a></dt>
<dd>
<div class="block">Create an instance from a String representation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpDec.html#newInstance(byte, byte)">newInstance(byte, byte)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpDec.html" title="class in org.apache.commons.math3.dfp">DfpDec</a></dt>
<dd>
<div class="block">Creates an instance with a non-finite value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html#newSampleData(double[], int, int)">newSampleData(double[], int, int)</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">AbstractMultipleLinearRegression</a></dt>
<dd>
<div class="block">Loads model x and y sample data from a flat input array, overriding any previous sample.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/GLSMultipleLinearRegression.html#newSampleData(double[], double[][], double[][])">newSampleData(double[], double[][], double[][])</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/GLSMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">GLSMultipleLinearRegression</a></dt>
<dd>
<div class="block">Replace sample data, overriding any previous sample.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/OLSMultipleLinearRegression.html#newSampleData(double[], double[][])">newSampleData(double[], double[][])</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/OLSMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">OLSMultipleLinearRegression</a></dt>
<dd>
<div class="block">Loads model x and y sample data, overriding any previous sample.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/OLSMultipleLinearRegression.html#newSampleData(double[], int, int)">newSampleData(double[], int, int)</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/OLSMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">OLSMultipleLinearRegression</a></dt>
<dd>
<div class="block">Loads model x and y sample data from a flat input array, overriding any previous sample.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/solvers/NewtonRaphsonSolver.html" title="class in org.apache.commons.math3.analysis.solvers"><span class="strong">NewtonRaphsonSolver</span></a> - Class in <a href="./org/apache/commons/math3/analysis/solvers/package-summary.html">org.apache.commons.math3.analysis.solvers</a></dt>
<dd>
<div class="block">Implements <a href="http://mathworld.wolfram.com/NewtonsMethod.html">
 Newton's Method</a> for finding zeros of real univariate differentiable
 functions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/NewtonRaphsonSolver.html#NewtonRaphsonSolver()">NewtonRaphsonSolver()</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/NewtonRaphsonSolver.html" title="class in org.apache.commons.math3.analysis.solvers">NewtonRaphsonSolver</a></dt>
<dd>
<div class="block">Construct a solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/NewtonRaphsonSolver.html#NewtonRaphsonSolver(double)">NewtonRaphsonSolver(double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/NewtonRaphsonSolver.html" title="class in org.apache.commons.math3.analysis.solvers">NewtonRaphsonSolver</a></dt>
<dd>
<div class="block">Construct a solver.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/solvers/NewtonSolver.html" title="class in org.apache.commons.math3.analysis.solvers"><span class="strong">NewtonSolver</span></a> - Class in <a href="./org/apache/commons/math3/analysis/solvers/package-summary.html">org.apache.commons.math3.analysis.solvers</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.1, replaced by <a href="./org/apache/commons/math3/analysis/solvers/NewtonRaphsonSolver.html" title="class in org.apache.commons.math3.analysis.solvers"><code>NewtonRaphsonSolver</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/NewtonSolver.html#NewtonSolver()">NewtonSolver()</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/NewtonSolver.html" title="class in org.apache.commons.math3.analysis.solvers">NewtonSolver</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Construct a solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/NewtonSolver.html#NewtonSolver(double)">NewtonSolver(double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/NewtonSolver.html" title="class in org.apache.commons.math3.analysis.solvers">NewtonSolver</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Construct a solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html#newXSampleData(double[][])">newXSampleData(double[][])</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">AbstractMultipleLinearRegression</a></dt>
<dd>
<div class="block">Loads new x sample data, overriding any previous data.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/OLSMultipleLinearRegression.html#newXSampleData(double[][])">newXSampleData(double[][])</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/OLSMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">OLSMultipleLinearRegression</a></dt>
<dd>
<div class="block">Loads new x sample data, overriding any previous data.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html#newYSampleData(double[])">newYSampleData(double[])</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">AbstractMultipleLinearRegression</a></dt>
<dd>
<div class="block">Loads new y sample data, overriding any previous data.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.OpenMapSparseIterator.html#next()">next()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.OpenMapSparseIterator.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector.OpenMapSparseIterator</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.SparseEntryIterator.html#next()">next()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.SparseEntryIterator.html" title="class in org.apache.commons.math3.linear">RealVector.SparseEntryIterator</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/AbstractWell.html#next(int)">next(int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/AbstractWell.html" title="class in org.apache.commons.math3.random">AbstractWell</a></dt>
<dd>
<div class="block">Generate next pseudorandom number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/BitsStreamGenerator.html#next(int)">next(int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/BitsStreamGenerator.html" title="class in org.apache.commons.math3.random">BitsStreamGenerator</a></dt>
<dd>
<div class="block">Generate next pseudorandom number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/ISAACRandom.html#next(int)">next(int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/ISAACRandom.html" title="class in org.apache.commons.math3.random">ISAACRandom</a></dt>
<dd>
<div class="block">Generate next pseudorandom number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/MersenneTwister.html#next(int)">next(int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/MersenneTwister.html" title="class in org.apache.commons.math3.random">MersenneTwister</a></dt>
<dd>
<div class="block">Generate next pseudorandom number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/Well1024a.html#next(int)">next(int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/Well1024a.html" title="class in org.apache.commons.math3.random">Well1024a</a></dt>
<dd>
<div class="block">Generate next pseudorandom number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/Well19937a.html#next(int)">next(int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/Well19937a.html" title="class in org.apache.commons.math3.random">Well19937a</a></dt>
<dd>
<div class="block">Generate next pseudorandom number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/Well19937c.html#next(int)">next(int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/Well19937c.html" title="class in org.apache.commons.math3.random">Well19937c</a></dt>
<dd>
<div class="block">Generate next pseudorandom number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/Well44497a.html#next(int)">next(int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/Well44497a.html" title="class in org.apache.commons.math3.random">Well44497a</a></dt>
<dd>
<div class="block">Generate next pseudorandom number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/Well44497b.html#next(int)">next(int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/Well44497b.html" title="class in org.apache.commons.math3.random">Well44497b</a></dt>
<dd>
<div class="block">Generate next pseudorandom number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/Well512a.html#next(int)">next(int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/Well512a.html" title="class in org.apache.commons.math3.random">Well512a</a></dt>
<dd>
<div class="block">Generate next pseudorandom number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MultidimensionalCounter.Iterator.html#next()">next()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MultidimensionalCounter.Iterator.html" title="class in org.apache.commons.math3.util">MultidimensionalCounter.Iterator</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#nextAfter(org.apache.commons.math3.dfp.Dfp)">nextAfter(Dfp)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Returns the next number greater than this one in the direction of x.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpDec.html#nextAfter(org.apache.commons.math3.dfp.Dfp)">nextAfter(Dfp)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpDec.html" title="class in org.apache.commons.math3.dfp">DfpDec</a></dt>
<dd>
<div class="block">Returns the next number greater than this one in the direction of x.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#nextAfter(double, double)">nextAfter(double, double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Get the next machine representable number after a number, moving
 in the direction of another number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#nextAfter(float, double)">nextAfter(float, double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Get the next machine representable number after a number, moving
 in the direction of another number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataGenerator.html#nextBeta(double, double)">nextBeta(double, double)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random">RandomDataGenerator</a></dt>
<dd>
<div class="block">Generates a random value from the <a href="./org/apache/commons/math3/distribution/BetaDistribution.html" title="class in org.apache.commons.math3.distribution"><code>Beta Distribution</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataImpl.html#nextBeta(double, double)">nextBeta(double, double)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random">RandomDataImpl</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates a random value from the <a href="./org/apache/commons/math3/distribution/BetaDistribution.html" title="class in org.apache.commons.math3.distribution"><code>Beta Distribution</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataGenerator.html#nextBinomial(int, double)">nextBinomial(int, double)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random">RandomDataGenerator</a></dt>
<dd>
<div class="block">Generates a random value from the <a href="./org/apache/commons/math3/distribution/BinomialDistribution.html" title="class in org.apache.commons.math3.distribution"><code>Binomial Distribution</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataImpl.html#nextBinomial(int, double)">nextBinomial(int, double)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random">RandomDataImpl</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates a random value from the <a href="./org/apache/commons/math3/distribution/BinomialDistribution.html" title="class in org.apache.commons.math3.distribution"><code>Binomial Distribution</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/AbstractRandomGenerator.html#nextBoolean()">nextBoolean()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/AbstractRandomGenerator.html" title="class in org.apache.commons.math3.random">AbstractRandomGenerator</a></dt>
<dd>
<div class="block">Returns the next pseudorandom, uniformly distributed
 <code>boolean</code> value from this random number generator's
 sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/BitsStreamGenerator.html#nextBoolean()">nextBoolean()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/BitsStreamGenerator.html" title="class in org.apache.commons.math3.random">BitsStreamGenerator</a></dt>
<dd>
<div class="block">Returns the next pseudorandom, uniformly distributed
 <code>boolean</code> value from this random number generator's
 sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomAdaptor.html#nextBoolean()">nextBoolean()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomAdaptor.html" title="class in org.apache.commons.math3.random">RandomAdaptor</a></dt>
<dd>
<div class="block">Returns the next pseudorandom, uniformly distributed
 <code>boolean</code> value from this random number generator's
 sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomGenerator.html#nextBoolean()">nextBoolean()</a></span> - Method in interface org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random">RandomGenerator</a></dt>
<dd>
<div class="block">Returns the next pseudorandom, uniformly distributed
 <code>boolean</code> value from this random number generator's
 sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/SynchronizedRandomGenerator.html#nextBoolean()">nextBoolean()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/SynchronizedRandomGenerator.html" title="class in org.apache.commons.math3.random">SynchronizedRandomGenerator</a></dt>
<dd>
<div class="block">Returns the next pseudorandom, uniformly distributed
 <code>boolean</code> value from this random number generator's
 sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/AbstractRandomGenerator.html#nextBytes(byte[])">nextBytes(byte[])</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/AbstractRandomGenerator.html" title="class in org.apache.commons.math3.random">AbstractRandomGenerator</a></dt>
<dd>
<div class="block">Generates random bytes and places them into a user-supplied
 byte array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/BitsStreamGenerator.html#nextBytes(byte[])">nextBytes(byte[])</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/BitsStreamGenerator.html" title="class in org.apache.commons.math3.random">BitsStreamGenerator</a></dt>
<dd>
<div class="block">Generates random bytes and places them into a user-supplied
 byte array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomAdaptor.html#nextBytes(byte[])">nextBytes(byte[])</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomAdaptor.html" title="class in org.apache.commons.math3.random">RandomAdaptor</a></dt>
<dd>
<div class="block">Generates random bytes and places them into a user-supplied
 byte array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomGenerator.html#nextBytes(byte[])">nextBytes(byte[])</a></span> - Method in interface org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random">RandomGenerator</a></dt>
<dd>
<div class="block">Generates random bytes and places them into a user-supplied
 byte array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/SynchronizedRandomGenerator.html#nextBytes(byte[])">nextBytes(byte[])</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/SynchronizedRandomGenerator.html" title="class in org.apache.commons.math3.random">SynchronizedRandomGenerator</a></dt>
<dd>
<div class="block">Generates random bytes and places them into a user-supplied
 byte array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataGenerator.html#nextCauchy(double, double)">nextCauchy(double, double)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random">RandomDataGenerator</a></dt>
<dd>
<div class="block">Generates a random value from the <a href="./org/apache/commons/math3/distribution/CauchyDistribution.html" title="class in org.apache.commons.math3.distribution"><code>Cauchy Distribution</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataImpl.html#nextCauchy(double, double)">nextCauchy(double, double)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random">RandomDataImpl</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates a random value from the <a href="./org/apache/commons/math3/distribution/CauchyDistribution.html" title="class in org.apache.commons.math3.distribution"><code>Cauchy Distribution</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataGenerator.html#nextChiSquare(double)">nextChiSquare(double)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random">RandomDataGenerator</a></dt>
<dd>
<div class="block">Generates a random value from the <a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html" title="class in org.apache.commons.math3.distribution"><code>ChiSquare Distribution</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataImpl.html#nextChiSquare(double)">nextChiSquare(double)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random">RandomDataImpl</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates a random value from the <a href="./org/apache/commons/math3/distribution/ChiSquaredDistribution.html" title="class in org.apache.commons.math3.distribution"><code>ChiSquare Distribution</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/AbstractRandomGenerator.html#nextDouble()">nextDouble()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/AbstractRandomGenerator.html" title="class in org.apache.commons.math3.random">AbstractRandomGenerator</a></dt>
<dd>
<div class="block">Returns the next pseudorandom, uniformly distributed
 <code>double</code> value between <code>0.0</code> and
 <code>1.0</code> from this random number generator's sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/BitsStreamGenerator.html#nextDouble()">nextDouble()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/BitsStreamGenerator.html" title="class in org.apache.commons.math3.random">BitsStreamGenerator</a></dt>
<dd>
<div class="block">Returns the next pseudorandom, uniformly distributed
 <code>double</code> value between <code>0.0</code> and
 <code>1.0</code> from this random number generator's sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomAdaptor.html#nextDouble()">nextDouble()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomAdaptor.html" title="class in org.apache.commons.math3.random">RandomAdaptor</a></dt>
<dd>
<div class="block">Returns the next pseudorandom, uniformly distributed
 <code>double</code> value between <code>0.0</code> and
 <code>1.0</code> from this random number generator's sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomGenerator.html#nextDouble()">nextDouble()</a></span> - Method in interface org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random">RandomGenerator</a></dt>
<dd>
<div class="block">Returns the next pseudorandom, uniformly distributed
 <code>double</code> value between <code>0.0</code> and
 <code>1.0</code> from this random number generator's sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/SynchronizedRandomGenerator.html#nextDouble()">nextDouble()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/SynchronizedRandomGenerator.html" title="class in org.apache.commons.math3.random">SynchronizedRandomGenerator</a></dt>
<dd>
<div class="block">Returns the next pseudorandom, uniformly distributed
 <code>double</code> value between <code>0.0</code> and
 <code>1.0</code> from this random number generator's sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomData.html#nextExponential(double)">nextExponential(double)</a></span> - Method in interface org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomData.html" title="interface in org.apache.commons.math3.random">RandomData</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates a random value from the exponential distribution
 with specified mean.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataGenerator.html#nextExponential(double)">nextExponential(double)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random">RandomDataGenerator</a></dt>
<dd>
<div class="block">Generates a random value from the exponential distribution
 with specified mean.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataImpl.html#nextExponential(double)">nextExponential(double)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random">RandomDataImpl</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates a random value from the exponential distribution
 with specified mean.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataGenerator.html#nextF(double, double)">nextF(double, double)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random">RandomDataGenerator</a></dt>
<dd>
<div class="block">Generates a random value from the <a href="./org/apache/commons/math3/distribution/FDistribution.html" title="class in org.apache.commons.math3.distribution"><code>F Distribution</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataImpl.html#nextF(double, double)">nextF(double, double)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random">RandomDataImpl</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates a random value from the <a href="./org/apache/commons/math3/distribution/FDistribution.html" title="class in org.apache.commons.math3.distribution"><code>F Distribution</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/AbstractRandomGenerator.html#nextFloat()">nextFloat()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/AbstractRandomGenerator.html" title="class in org.apache.commons.math3.random">AbstractRandomGenerator</a></dt>
<dd>
<div class="block">Returns the next pseudorandom, uniformly distributed <code>float</code>
 value between <code>0.0</code> and <code>1.0</code> from this random
 number generator's sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/BitsStreamGenerator.html#nextFloat()">nextFloat()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/BitsStreamGenerator.html" title="class in org.apache.commons.math3.random">BitsStreamGenerator</a></dt>
<dd>
<div class="block">Returns the next pseudorandom, uniformly distributed <code>float</code>
 value between <code>0.0</code> and <code>1.0</code> from this random
 number generator's sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomAdaptor.html#nextFloat()">nextFloat()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomAdaptor.html" title="class in org.apache.commons.math3.random">RandomAdaptor</a></dt>
<dd>
<div class="block">Returns the next pseudorandom, uniformly distributed <code>float</code>
 value between <code>0.0</code> and <code>1.0</code> from this random
 number generator's sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomGenerator.html#nextFloat()">nextFloat()</a></span> - Method in interface org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random">RandomGenerator</a></dt>
<dd>
<div class="block">Returns the next pseudorandom, uniformly distributed <code>float</code>
 value between <code>0.0</code> and <code>1.0</code> from this random
 number generator's sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/SynchronizedRandomGenerator.html#nextFloat()">nextFloat()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/SynchronizedRandomGenerator.html" title="class in org.apache.commons.math3.random">SynchronizedRandomGenerator</a></dt>
<dd>
<div class="block">Returns the next pseudorandom, uniformly distributed <code>float</code>
 value between <code>0.0</code> and <code>1.0</code> from this random
 number generator's sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataGenerator.html#nextGamma(double, double)">nextGamma(double, double)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random">RandomDataGenerator</a></dt>
<dd>
<div class="block">Generates a random value from the
 <a href="./org/apache/commons/math3/distribution/GammaDistribution.html" title="class in org.apache.commons.math3.distribution"><code>Gamma Distribution</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataImpl.html#nextGamma(double, double)">nextGamma(double, double)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random">RandomDataImpl</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates a random value from the
 <a href="./org/apache/commons/math3/distribution/GammaDistribution.html" title="class in org.apache.commons.math3.distribution"><code>Gamma Distribution</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/AbstractRandomGenerator.html#nextGaussian()">nextGaussian()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/AbstractRandomGenerator.html" title="class in org.apache.commons.math3.random">AbstractRandomGenerator</a></dt>
<dd>
<div class="block">Returns the next pseudorandom, Gaussian ("normally") distributed
 <code>double</code> value with mean <code>0.0</code> and standard
 deviation <code>1.0</code> from this random number generator's sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/BitsStreamGenerator.html#nextGaussian()">nextGaussian()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/BitsStreamGenerator.html" title="class in org.apache.commons.math3.random">BitsStreamGenerator</a></dt>
<dd>
<div class="block">Returns the next pseudorandom, Gaussian ("normally") distributed
 <code>double</code> value with mean <code>0.0</code> and standard
 deviation <code>1.0</code> from this random number generator's sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomAdaptor.html#nextGaussian()">nextGaussian()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomAdaptor.html" title="class in org.apache.commons.math3.random">RandomAdaptor</a></dt>
<dd>
<div class="block">Returns the next pseudorandom, Gaussian ("normally") distributed
 <code>double</code> value with mean <code>0.0</code> and standard
 deviation <code>1.0</code> from this random number generator's sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomData.html#nextGaussian(double, double)">nextGaussian(double, double)</a></span> - Method in interface org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomData.html" title="interface in org.apache.commons.math3.random">RandomData</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates a random value from the Normal (or Gaussian) distribution with
 specified mean and standard deviation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataGenerator.html#nextGaussian(double, double)">nextGaussian(double, double)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random">RandomDataGenerator</a></dt>
<dd>
<div class="block">Generates a random value from the Normal (or Gaussian) distribution with
 specified mean and standard deviation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataImpl.html#nextGaussian(double, double)">nextGaussian(double, double)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random">RandomDataImpl</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates a random value from the Normal (or Gaussian) distribution with
 specified mean and standard deviation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomGenerator.html#nextGaussian()">nextGaussian()</a></span> - Method in interface org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random">RandomGenerator</a></dt>
<dd>
<div class="block">Returns the next pseudorandom, Gaussian ("normally") distributed
 <code>double</code> value with mean <code>0.0</code> and standard
 deviation <code>1.0</code> from this random number generator's sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/SynchronizedRandomGenerator.html#nextGaussian()">nextGaussian()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/SynchronizedRandomGenerator.html" title="class in org.apache.commons.math3.random">SynchronizedRandomGenerator</a></dt>
<dd>
<div class="block">Returns the next pseudorandom, Gaussian ("normally") distributed
 <code>double</code> value with mean <code>0.0</code> and standard
 deviation <code>1.0</code> from this random number generator's sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/ElitisticListPopulation.html#nextGeneration()">nextGeneration()</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/ElitisticListPopulation.html" title="class in org.apache.commons.math3.genetics">ElitisticListPopulation</a></dt>
<dd>
<div class="block">Start the population for the next generation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/GeneticAlgorithm.html#nextGeneration(org.apache.commons.math3.genetics.Population)">nextGeneration(Population)</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/GeneticAlgorithm.html" title="class in org.apache.commons.math3.genetics">GeneticAlgorithm</a></dt>
<dd>
<div class="block">Evolve the given population into the next generation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/Population.html#nextGeneration()">nextGeneration()</a></span> - Method in interface org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/Population.html" title="interface in org.apache.commons.math3.genetics">Population</a></dt>
<dd>
<div class="block">Start the population for the next generation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomData.html#nextHexString(int)">nextHexString(int)</a></span> - Method in interface org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomData.html" title="interface in org.apache.commons.math3.random">RandomData</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates a random string of hex characters of length <code>len</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataGenerator.html#nextHexString(int)">nextHexString(int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random">RandomDataGenerator</a></dt>
<dd>
<div class="block">Generates a random string of hex characters of length <code>len</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataImpl.html#nextHexString(int)">nextHexString(int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random">RandomDataImpl</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates a random string of hex characters of length <code>len</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataGenerator.html#nextHypergeometric(int, int, int)">nextHypergeometric(int, int, int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random">RandomDataGenerator</a></dt>
<dd>
<div class="block">Generates a random value from the <a href="./org/apache/commons/math3/distribution/HypergeometricDistribution.html" title="class in org.apache.commons.math3.distribution"><code>Hypergeometric Distribution</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataImpl.html#nextHypergeometric(int, int, int)">nextHypergeometric(int, int, int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random">RandomDataImpl</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates a random value from the <a href="./org/apache/commons/math3/distribution/HypergeometricDistribution.html" title="class in org.apache.commons.math3.distribution"><code>Hypergeometric Distribution</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/AbstractRandomGenerator.html#nextInt()">nextInt()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/AbstractRandomGenerator.html" title="class in org.apache.commons.math3.random">AbstractRandomGenerator</a></dt>
<dd>
<div class="block">Returns the next pseudorandom, uniformly distributed <code>int</code>
 value from this random number generator's sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/AbstractRandomGenerator.html#nextInt(int)">nextInt(int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/AbstractRandomGenerator.html" title="class in org.apache.commons.math3.random">AbstractRandomGenerator</a></dt>
<dd>
<div class="block">Returns a pseudorandom, uniformly distributed <code>int</code> value
 between 0 (inclusive) and the specified value (exclusive), drawn from
 this random number generator's sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/BitsStreamGenerator.html#nextInt()">nextInt()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/BitsStreamGenerator.html" title="class in org.apache.commons.math3.random">BitsStreamGenerator</a></dt>
<dd>
<div class="block">Returns the next pseudorandom, uniformly distributed <code>int</code>
 value from this random number generator's sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/BitsStreamGenerator.html#nextInt(int)">nextInt(int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/BitsStreamGenerator.html" title="class in org.apache.commons.math3.random">BitsStreamGenerator</a></dt>
<dd>
<div class="block">Returns a pseudorandom, uniformly distributed <tt>int</tt> value
 between 0 (inclusive) and the specified value (exclusive), drawn from
 this random number generator's sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomAdaptor.html#nextInt()">nextInt()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomAdaptor.html" title="class in org.apache.commons.math3.random">RandomAdaptor</a></dt>
<dd>
<div class="block">Returns the next pseudorandom, uniformly distributed <code>int</code>
 value from this random number generator's sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomAdaptor.html#nextInt(int)">nextInt(int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomAdaptor.html" title="class in org.apache.commons.math3.random">RandomAdaptor</a></dt>
<dd>
<div class="block">Returns a pseudorandom, uniformly distributed <tt>int</tt> value
 between 0 (inclusive) and the specified value (exclusive), drawn from
 this random number generator's sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomData.html#nextInt(int, int)">nextInt(int, int)</a></span> - Method in interface org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomData.html" title="interface in org.apache.commons.math3.random">RandomData</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates a uniformly distributed random integer between <code>lower</code>
 and <code>upper</code> (endpoints included).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataGenerator.html#nextInt(int, int)">nextInt(int, int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random">RandomDataGenerator</a></dt>
<dd>
<div class="block">Generates a uniformly distributed random integer between <code>lower</code>
 and <code>upper</code> (endpoints included).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataImpl.html#nextInt(int, int)">nextInt(int, int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random">RandomDataImpl</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates a uniformly distributed random integer between <code>lower</code>
 and <code>upper</code> (endpoints included).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomGenerator.html#nextInt()">nextInt()</a></span> - Method in interface org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random">RandomGenerator</a></dt>
<dd>
<div class="block">Returns the next pseudorandom, uniformly distributed <code>int</code>
 value from this random number generator's sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomGenerator.html#nextInt(int)">nextInt(int)</a></span> - Method in interface org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random">RandomGenerator</a></dt>
<dd>
<div class="block">Returns a pseudorandom, uniformly distributed <tt>int</tt> value
 between 0 (inclusive) and the specified value (exclusive), drawn from
 this random number generator's sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/SynchronizedRandomGenerator.html#nextInt()">nextInt()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/SynchronizedRandomGenerator.html" title="class in org.apache.commons.math3.random">SynchronizedRandomGenerator</a></dt>
<dd>
<div class="block">Returns the next pseudorandom, uniformly distributed <code>int</code>
 value from this random number generator's sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/SynchronizedRandomGenerator.html#nextInt(int)">nextInt(int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/SynchronizedRandomGenerator.html" title="class in org.apache.commons.math3.random">SynchronizedRandomGenerator</a></dt>
<dd>
<div class="block">Returns a pseudorandom, uniformly distributed <tt>int</tt> value
 between 0 (inclusive) and the specified value (exclusive), drawn from
 this random number generator's sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataImpl.html#nextInversionDeviate(org.apache.commons.math3.distribution.RealDistribution)">nextInversionDeviate(RealDistribution)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random">RandomDataImpl</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>use the distribution's sample() method</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataImpl.html#nextInversionDeviate(org.apache.commons.math3.distribution.IntegerDistribution)">nextInversionDeviate(IntegerDistribution)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random">RandomDataImpl</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>use the distribution's sample() method</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/AbstractRandomGenerator.html#nextLong()">nextLong()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/AbstractRandomGenerator.html" title="class in org.apache.commons.math3.random">AbstractRandomGenerator</a></dt>
<dd>
<div class="block">Returns the next pseudorandom, uniformly distributed <code>long</code>
 value from this random number generator's sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/BitsStreamGenerator.html#nextLong()">nextLong()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/BitsStreamGenerator.html" title="class in org.apache.commons.math3.random">BitsStreamGenerator</a></dt>
<dd>
<div class="block">Returns the next pseudorandom, uniformly distributed <code>long</code>
 value from this random number generator's sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/BitsStreamGenerator.html#nextLong(long)">nextLong(long)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/BitsStreamGenerator.html" title="class in org.apache.commons.math3.random">BitsStreamGenerator</a></dt>
<dd>
<div class="block">Returns a pseudorandom, uniformly distributed <tt>long</tt> value
 between 0 (inclusive) and the specified value (exclusive), drawn from
 this random number generator's sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomAdaptor.html#nextLong()">nextLong()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomAdaptor.html" title="class in org.apache.commons.math3.random">RandomAdaptor</a></dt>
<dd>
<div class="block">Returns the next pseudorandom, uniformly distributed <code>long</code>
 value from this random number generator's sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomData.html#nextLong(long, long)">nextLong(long, long)</a></span> - Method in interface org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomData.html" title="interface in org.apache.commons.math3.random">RandomData</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates a uniformly distributed random long integer between
 <code>lower</code> and <code>upper</code> (endpoints included).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataGenerator.html#nextLong(long, long)">nextLong(long, long)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random">RandomDataGenerator</a></dt>
<dd>
<div class="block">Generates a uniformly distributed random long integer between
 <code>lower</code> and <code>upper</code> (endpoints included).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataImpl.html#nextLong(long, long)">nextLong(long, long)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random">RandomDataImpl</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates a uniformly distributed random long integer between
 <code>lower</code> and <code>upper</code> (endpoints included).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomGenerator.html#nextLong()">nextLong()</a></span> - Method in interface org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random">RandomGenerator</a></dt>
<dd>
<div class="block">Returns the next pseudorandom, uniformly distributed <code>long</code>
 value from this random number generator's sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/SynchronizedRandomGenerator.html#nextLong()">nextLong()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/SynchronizedRandomGenerator.html" title="class in org.apache.commons.math3.random">SynchronizedRandomGenerator</a></dt>
<dd>
<div class="block">Returns the next pseudorandom, uniformly distributed <code>long</code>
 value from this random number generator's sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/GaussianRandomGenerator.html#nextNormalizedDouble()">nextNormalizedDouble()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/GaussianRandomGenerator.html" title="class in org.apache.commons.math3.random">GaussianRandomGenerator</a></dt>
<dd>
<div class="block">Generate a random scalar with null mean and unit standard deviation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/NormalizedRandomGenerator.html#nextNormalizedDouble()">nextNormalizedDouble()</a></span> - Method in interface org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/NormalizedRandomGenerator.html" title="interface in org.apache.commons.math3.random">NormalizedRandomGenerator</a></dt>
<dd>
<div class="block">Generate a random scalar with null mean and unit standard deviation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/StableRandomGenerator.html#nextNormalizedDouble()">nextNormalizedDouble()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/StableRandomGenerator.html" title="class in org.apache.commons.math3.random">StableRandomGenerator</a></dt>
<dd>
<div class="block">Generate a random scalar with zero location and unit scale.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/UniformRandomGenerator.html#nextNormalizedDouble()">nextNormalizedDouble()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/UniformRandomGenerator.html" title="class in org.apache.commons.math3.random">UniformRandomGenerator</a></dt>
<dd>
<div class="block">Generate a random scalar with null mean and unit standard deviation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataGenerator.html#nextPascal(int, double)">nextPascal(int, double)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random">RandomDataGenerator</a></dt>
<dd>
<div class="block">Generates a random value from the <a href="./org/apache/commons/math3/distribution/PascalDistribution.html" title="class in org.apache.commons.math3.distribution"><code>Pascal Distribution</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataImpl.html#nextPascal(int, double)">nextPascal(int, double)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random">RandomDataImpl</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates a random value from the <a href="./org/apache/commons/math3/distribution/PascalDistribution.html" title="class in org.apache.commons.math3.distribution"><code>Pascal Distribution</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomData.html#nextPermutation(int, int)">nextPermutation(int, int)</a></span> - Method in interface org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomData.html" title="interface in org.apache.commons.math3.random">RandomData</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates an integer array of length <code>k</code> whose entries are selected
 randomly, without repetition, from the integers <code>0, ..., n - 1</code>
 (inclusive).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataGenerator.html#nextPermutation(int, int)">nextPermutation(int, int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random">RandomDataGenerator</a></dt>
<dd>
<div class="block">Generates an integer array of length <code>k</code> whose entries are selected
 randomly, without repetition, from the integers <code>0, ..., n - 1</code>
 (inclusive).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataImpl.html#nextPermutation(int, int)">nextPermutation(int, int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random">RandomDataImpl</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates an integer array of length <code>k</code> whose entries are selected
 randomly, without repetition, from the integers <code>0, ..., n - 1</code>
 (inclusive).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomData.html#nextPoisson(double)">nextPoisson(double)</a></span> - Method in interface org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomData.html" title="interface in org.apache.commons.math3.random">RandomData</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates a random value from the Poisson distribution with the given
 mean.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataGenerator.html#nextPoisson(double)">nextPoisson(double)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random">RandomDataGenerator</a></dt>
<dd>
<div class="block">Generates a random value from the Poisson distribution with the given
 mean.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataImpl.html#nextPoisson(double)">nextPoisson(double)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random">RandomDataImpl</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates a random value from the Poisson distribution with the given
 mean.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/primes/Primes.html#nextPrime(int)">nextPrime(int)</a></span> - Static method in class org.apache.commons.math3.primes.<a href="./org/apache/commons/math3/primes/Primes.html" title="class in org.apache.commons.math3.primes">Primes</a></dt>
<dd>
<div class="block">Return the smallest prime greater than or equal to n.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomData.html#nextSample(java.util.Collection, int)">nextSample(Collection&lt;?&gt;, int)</a></span> - Method in interface org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomData.html" title="interface in org.apache.commons.math3.random">RandomData</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Returns an array of <code>k</code> objects selected randomly from the
 Collection <code>c</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataGenerator.html#nextSample(java.util.Collection, int)">nextSample(Collection&lt;?&gt;, int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random">RandomDataGenerator</a></dt>
<dd>
<div class="block">Returns an array of <code>k</code> objects selected randomly from the
 Collection <code>c</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataImpl.html#nextSample(java.util.Collection, int)">nextSample(Collection&lt;?&gt;, int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random">RandomDataImpl</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Returns an array of <code>k</code> objects selected randomly from the
 Collection <code>c</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomData.html#nextSecureHexString(int)">nextSecureHexString(int)</a></span> - Method in interface org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomData.html" title="interface in org.apache.commons.math3.random">RandomData</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates a random string of hex characters from a secure random
 sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataGenerator.html#nextSecureHexString(int)">nextSecureHexString(int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random">RandomDataGenerator</a></dt>
<dd>
<div class="block">Generates a random string of hex characters from a secure random
 sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataImpl.html#nextSecureHexString(int)">nextSecureHexString(int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random">RandomDataImpl</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates a random string of hex characters from a secure random
 sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomData.html#nextSecureInt(int, int)">nextSecureInt(int, int)</a></span> - Method in interface org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomData.html" title="interface in org.apache.commons.math3.random">RandomData</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates a uniformly distributed random integer between <code>lower</code>
 and <code>upper</code> (endpoints included) from a secure random sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataGenerator.html#nextSecureInt(int, int)">nextSecureInt(int, int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random">RandomDataGenerator</a></dt>
<dd>
<div class="block">Generates a uniformly distributed random integer between <code>lower</code>
 and <code>upper</code> (endpoints included) from a secure random sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataImpl.html#nextSecureInt(int, int)">nextSecureInt(int, int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random">RandomDataImpl</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates a uniformly distributed random integer between <code>lower</code>
 and <code>upper</code> (endpoints included) from a secure random sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomData.html#nextSecureLong(long, long)">nextSecureLong(long, long)</a></span> - Method in interface org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomData.html" title="interface in org.apache.commons.math3.random">RandomData</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates a uniformly distributed random long integer between
 <code>lower</code> and <code>upper</code> (endpoints included) from a secure random
 sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataGenerator.html#nextSecureLong(long, long)">nextSecureLong(long, long)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random">RandomDataGenerator</a></dt>
<dd>
<div class="block">Generates a uniformly distributed random long integer between
 <code>lower</code> and <code>upper</code> (endpoints included) from a secure random
 sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataImpl.html#nextSecureLong(long, long)">nextSecureLong(long, long)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random">RandomDataImpl</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates a uniformly distributed random long integer between
 <code>lower</code> and <code>upper</code> (endpoints included) from a secure random
 sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataGenerator.html#nextT(double)">nextT(double)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random">RandomDataGenerator</a></dt>
<dd>
<div class="block">Generates a random value from the <a href="./org/apache/commons/math3/distribution/TDistribution.html" title="class in org.apache.commons.math3.distribution"><code>T Distribution</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataImpl.html#nextT(double)">nextT(double)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random">RandomDataImpl</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates a random value from the <a href="./org/apache/commons/math3/distribution/TDistribution.html" title="class in org.apache.commons.math3.distribution"><code>T Distribution</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomData.html#nextUniform(double, double)">nextUniform(double, double)</a></span> - Method in interface org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomData.html" title="interface in org.apache.commons.math3.random">RandomData</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates a uniformly distributed random value from the open interval
 <code>(lower, upper)</code> (i.e., endpoints excluded).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomData.html#nextUniform(double, double, boolean)">nextUniform(double, double, boolean)</a></span> - Method in interface org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomData.html" title="interface in org.apache.commons.math3.random">RandomData</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates a uniformly distributed random value from the interval
 <code>(lower, upper)</code> or the interval <code>[lower, upper)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataGenerator.html#nextUniform(double, double)">nextUniform(double, double)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random">RandomDataGenerator</a></dt>
<dd>
<div class="block">Generates a uniformly distributed random value from the open interval
 <code>(lower, upper)</code> (i.e., endpoints excluded).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataGenerator.html#nextUniform(double, double, boolean)">nextUniform(double, double, boolean)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random">RandomDataGenerator</a></dt>
<dd>
<div class="block">Generates a uniformly distributed random value from the interval
 <code>(lower, upper)</code> or the interval <code>[lower, upper)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataImpl.html#nextUniform(double, double)">nextUniform(double, double)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random">RandomDataImpl</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates a uniformly distributed random value from the open interval
 <code>(lower, upper)</code> (i.e., endpoints excluded).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataImpl.html#nextUniform(double, double, boolean)">nextUniform(double, double, boolean)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random">RandomDataImpl</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates a uniformly distributed random value from the interval
 <code>(lower, upper)</code> or the interval <code>[lower, upper)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#nextUp(double)">nextUp(double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Compute next number towards positive infinity.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#nextUp(float)">nextUp(float)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Compute next number towards positive infinity.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/CorrelatedRandomVectorGenerator.html#nextVector()">nextVector()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/CorrelatedRandomVectorGenerator.html" title="class in org.apache.commons.math3.random">CorrelatedRandomVectorGenerator</a></dt>
<dd>
<div class="block">Generate a correlated random vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/HaltonSequenceGenerator.html#nextVector()">nextVector()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/HaltonSequenceGenerator.html" title="class in org.apache.commons.math3.random">HaltonSequenceGenerator</a></dt>
<dd>
<div class="block">Generate a random vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomVectorGenerator.html#nextVector()">nextVector()</a></span> - Method in interface org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomVectorGenerator.html" title="interface in org.apache.commons.math3.random">RandomVectorGenerator</a></dt>
<dd>
<div class="block">Generate a random vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/SobolSequenceGenerator.html#nextVector()">nextVector()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/SobolSequenceGenerator.html" title="class in org.apache.commons.math3.random">SobolSequenceGenerator</a></dt>
<dd>
<div class="block">Generate a random vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/UncorrelatedRandomVectorGenerator.html#nextVector()">nextVector()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/UncorrelatedRandomVectorGenerator.html" title="class in org.apache.commons.math3.random">UncorrelatedRandomVectorGenerator</a></dt>
<dd>
<div class="block">Generate an uncorrelated random vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/UnitSphereRandomVectorGenerator.html#nextVector()">nextVector()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/UnitSphereRandomVectorGenerator.html" title="class in org.apache.commons.math3.random">UnitSphereRandomVectorGenerator</a></dt>
<dd>
<div class="block">Generate a random vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataGenerator.html#nextWeibull(double, double)">nextWeibull(double, double)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random">RandomDataGenerator</a></dt>
<dd>
<div class="block">Generates a random value from the <a href="./org/apache/commons/math3/distribution/WeibullDistribution.html" title="class in org.apache.commons.math3.distribution"><code>Weibull Distribution</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataImpl.html#nextWeibull(double, double)">nextWeibull(double, double)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random">RandomDataImpl</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates a random value from the <a href="./org/apache/commons/math3/distribution/WeibullDistribution.html" title="class in org.apache.commons.math3.distribution"><code>Weibull Distribution</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataGenerator.html#nextZipf(int, double)">nextZipf(int, double)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random">RandomDataGenerator</a></dt>
<dd>
<div class="block">Generates a random value from the <a href="./org/apache/commons/math3/distribution/ZipfDistribution.html" title="class in org.apache.commons.math3.distribution"><code>Zipf Distribution</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataImpl.html#nextZipf(int, double)">nextZipf(int, double)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random">RandomDataImpl</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Generates a random value from the <a href="./org/apache/commons/math3/distribution/ZipfDistribution.html" title="class in org.apache.commons.math3.distribution"><code>Zipf Distribution</code></a>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/exception/NoBracketingException.html" title="class in org.apache.commons.math3.exception"><span class="strong">NoBracketingException</span></a> - Exception in <a href="./org/apache/commons/math3/exception/package-summary.html">org.apache.commons.math3.exception</a></dt>
<dd>
<div class="block">Exception to be thrown when function values have the same sign at both
 ends of an interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/NoBracketingException.html#NoBracketingException(double, double, double, double)">NoBracketingException(double, double, double, double)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/NoBracketingException.html" title="class in org.apache.commons.math3.exception">NoBracketingException</a></dt>
<dd>
<div class="block">Construct the exception.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/NoBracketingException.html#NoBracketingException(org.apache.commons.math3.exception.util.Localizable, double, double, double, double, java.lang.Object...)">NoBracketingException(Localizable, double, double, double, double, Object...)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/NoBracketingException.html" title="class in org.apache.commons.math3.exception">NoBracketingException</a></dt>
<dd>
<div class="block">Construct the exception with a specific context.</div>
</dd>
<dt><a href="./org/apache/commons/math3/exception/NoDataException.html" title="class in org.apache.commons.math3.exception"><span class="strong">NoDataException</span></a> - Exception in <a href="./org/apache/commons/math3/exception/package-summary.html">org.apache.commons.math3.exception</a></dt>
<dd>
<div class="block">Exception to be thrown when the required data is missing.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/NoDataException.html#NoDataException()">NoDataException()</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/NoDataException.html" title="class in org.apache.commons.math3.exception">NoDataException</a></dt>
<dd>
<div class="block">Construct the exception.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/NoDataException.html#NoDataException(org.apache.commons.math3.exception.util.Localizable)">NoDataException(Localizable)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/NoDataException.html" title="class in org.apache.commons.math3.exception">NoDataException</a></dt>
<dd>
<div class="block">Construct the exception with a specific context.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/linear/NoFeasibleSolutionException.html" title="class in org.apache.commons.math3.optim.linear"><span class="strong">NoFeasibleSolutionException</span></a> - Exception in <a href="./org/apache/commons/math3/optim/linear/package-summary.html">org.apache.commons.math3.optim.linear</a></dt>
<dd>
<div class="block">This class represents exceptions thrown by optimizers when no solution fulfills the constraints.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/NoFeasibleSolutionException.html#NoFeasibleSolutionException()">NoFeasibleSolutionException()</a></span> - Constructor for exception org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/NoFeasibleSolutionException.html" title="class in org.apache.commons.math3.optim.linear">NoFeasibleSolutionException</a></dt>
<dd>
<div class="block">Simple constructor using a default message.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/linear/NoFeasibleSolutionException.html" title="class in org.apache.commons.math3.optimization.linear"><span class="strong">NoFeasibleSolutionException</span></a> - Exception in <a href="./org/apache/commons/math3/optimization/linear/package-summary.html">org.apache.commons.math3.optimization.linear</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/NoFeasibleSolutionException.html#NoFeasibleSolutionException()">NoFeasibleSolutionException()</a></span> - Constructor for exception org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/NoFeasibleSolutionException.html" title="class in org.apache.commons.math3.optimization.linear">NoFeasibleSolutionException</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Simple constructor using a default message.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.gradient"><span class="strong">NonLinearConjugateGradientOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/package-summary.html">org.apache.commons.math3.optim.nonlinear.scalar.gradient</a></dt>
<dd>
<div class="block">Non-linear conjugate gradient optimizer.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.html#NonLinearConjugateGradientOptimizer(org.apache.commons.math3.optim.nonlinear.scalar.gradient.NonLinearConjugateGradientOptimizer.Formula, org.apache.commons.math3.optim.ConvergenceChecker)">NonLinearConjugateGradientOptimizer(NonLinearConjugateGradientOptimizer.Formula, ConvergenceChecker&lt;PointValuePair&gt;)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.gradient.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.gradient">NonLinearConjugateGradientOptimizer</a></dt>
<dd>
<div class="block">Constructor with default tolerances for the line search (1e-8) and
 <a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.IdentityPreconditioner.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.gradient"><code>preconditioner</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.html#NonLinearConjugateGradientOptimizer(org.apache.commons.math3.optim.nonlinear.scalar.gradient.NonLinearConjugateGradientOptimizer.Formula, org.apache.commons.math3.optim.ConvergenceChecker, org.apache.commons.math3.analysis.solvers.UnivariateSolver)">NonLinearConjugateGradientOptimizer(NonLinearConjugateGradientOptimizer.Formula, ConvergenceChecker&lt;PointValuePair&gt;, UnivariateSolver)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.gradient.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.gradient">NonLinearConjugateGradientOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.3. Please use
 <a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.html#NonLinearConjugateGradientOptimizer(org.apache.commons.math3.optim.nonlinear.scalar.gradient.NonLinearConjugateGradientOptimizer.Formula, org.apache.commons.math3.optim.ConvergenceChecker, double, double, double)"><code>NonLinearConjugateGradientOptimizer.NonLinearConjugateGradientOptimizer(Formula,ConvergenceChecker,double,double,double)</code></a> instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.html#NonLinearConjugateGradientOptimizer(org.apache.commons.math3.optim.nonlinear.scalar.gradient.NonLinearConjugateGradientOptimizer.Formula, org.apache.commons.math3.optim.ConvergenceChecker, double, double, double)">NonLinearConjugateGradientOptimizer(NonLinearConjugateGradientOptimizer.Formula, ConvergenceChecker&lt;PointValuePair&gt;, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.gradient.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.gradient">NonLinearConjugateGradientOptimizer</a></dt>
<dd>
<div class="block">Constructor with default <a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.IdentityPreconditioner.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.gradient"><code>preconditioner</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.html#NonLinearConjugateGradientOptimizer(org.apache.commons.math3.optim.nonlinear.scalar.gradient.NonLinearConjugateGradientOptimizer.Formula, org.apache.commons.math3.optim.ConvergenceChecker, org.apache.commons.math3.analysis.solvers.UnivariateSolver, org.apache.commons.math3.optim.nonlinear.scalar.gradient.Preconditioner)">NonLinearConjugateGradientOptimizer(NonLinearConjugateGradientOptimizer.Formula, ConvergenceChecker&lt;PointValuePair&gt;, UnivariateSolver, Preconditioner)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.gradient.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.gradient">NonLinearConjugateGradientOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.3. Please use
 <a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.html#NonLinearConjugateGradientOptimizer(org.apache.commons.math3.optim.nonlinear.scalar.gradient.NonLinearConjugateGradientOptimizer.Formula, org.apache.commons.math3.optim.ConvergenceChecker, double, double, double, org.apache.commons.math3.optim.nonlinear.scalar.gradient.Preconditioner)"><code>NonLinearConjugateGradientOptimizer.NonLinearConjugateGradientOptimizer(Formula,ConvergenceChecker,double,double,double,Preconditioner)</code></a> instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.html#NonLinearConjugateGradientOptimizer(org.apache.commons.math3.optim.nonlinear.scalar.gradient.NonLinearConjugateGradientOptimizer.Formula, org.apache.commons.math3.optim.ConvergenceChecker, double, double, double, org.apache.commons.math3.optim.nonlinear.scalar.gradient.Preconditioner)">NonLinearConjugateGradientOptimizer(NonLinearConjugateGradientOptimizer.Formula, ConvergenceChecker&lt;PointValuePair&gt;, double, double, double, Preconditioner)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.gradient.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.gradient">NonLinearConjugateGradientOptimizer</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optimization/general/NonLinearConjugateGradientOptimizer.html" title="class in org.apache.commons.math3.optimization.general"><span class="strong">NonLinearConjugateGradientOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optimization/general/package-summary.html">org.apache.commons.math3.optimization.general</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/NonLinearConjugateGradientOptimizer.html#NonLinearConjugateGradientOptimizer(org.apache.commons.math3.optimization.general.ConjugateGradientFormula)">NonLinearConjugateGradientOptimizer(ConjugateGradientFormula)</a></span> - Constructor for class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/NonLinearConjugateGradientOptimizer.html" title="class in org.apache.commons.math3.optimization.general">NonLinearConjugateGradientOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>See <a href="./org/apache/commons/math3/optimization/SimpleValueChecker.html#SimpleValueChecker()"><code>SimpleValueChecker.SimpleValueChecker()</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/NonLinearConjugateGradientOptimizer.html#NonLinearConjugateGradientOptimizer(org.apache.commons.math3.optimization.general.ConjugateGradientFormula, org.apache.commons.math3.optimization.ConvergenceChecker)">NonLinearConjugateGradientOptimizer(ConjugateGradientFormula, ConvergenceChecker&lt;PointValuePair&gt;)</a></span> - Constructor for class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/NonLinearConjugateGradientOptimizer.html" title="class in org.apache.commons.math3.optimization.general">NonLinearConjugateGradientOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Constructor with default <a href="./org/apache/commons/math3/analysis/solvers/BrentSolver.html" title="class in org.apache.commons.math3.analysis.solvers"><code>line search solver</code></a> and
 <a href="./org/apache/commons/math3/optimization/general/NonLinearConjugateGradientOptimizer.IdentityPreconditioner.html" title="class in org.apache.commons.math3.optimization.general"><code>preconditioner</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/NonLinearConjugateGradientOptimizer.html#NonLinearConjugateGradientOptimizer(org.apache.commons.math3.optimization.general.ConjugateGradientFormula, org.apache.commons.math3.optimization.ConvergenceChecker, org.apache.commons.math3.analysis.solvers.UnivariateSolver)">NonLinearConjugateGradientOptimizer(ConjugateGradientFormula, ConvergenceChecker&lt;PointValuePair&gt;, UnivariateSolver)</a></span> - Constructor for class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/NonLinearConjugateGradientOptimizer.html" title="class in org.apache.commons.math3.optimization.general">NonLinearConjugateGradientOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Constructor with default <a href="./org/apache/commons/math3/optimization/general/NonLinearConjugateGradientOptimizer.IdentityPreconditioner.html" title="class in org.apache.commons.math3.optimization.general"><code>preconditioner</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/NonLinearConjugateGradientOptimizer.html#NonLinearConjugateGradientOptimizer(org.apache.commons.math3.optimization.general.ConjugateGradientFormula, org.apache.commons.math3.optimization.ConvergenceChecker, org.apache.commons.math3.analysis.solvers.UnivariateSolver, org.apache.commons.math3.optimization.general.Preconditioner)">NonLinearConjugateGradientOptimizer(ConjugateGradientFormula, ConvergenceChecker&lt;PointValuePair&gt;, UnivariateSolver, Preconditioner)</a></span> - Constructor for class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/NonLinearConjugateGradientOptimizer.html" title="class in org.apache.commons.math3.optimization.general">NonLinearConjugateGradientOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.BracketingStep.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.gradient"><span class="strong">NonLinearConjugateGradientOptimizer.BracketingStep</span></a> - Class in <a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/package-summary.html">org.apache.commons.math3.optim.nonlinear.scalar.gradient</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of v3.3, this class is not used anymore.
 This setting is replaced by the <code>initialBracketingRange</code>
 argument to the new constructors.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.BracketingStep.html#NonLinearConjugateGradientOptimizer.BracketingStep(double)">NonLinearConjugateGradientOptimizer.BracketingStep(double)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.gradient.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.BracketingStep.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.gradient">NonLinearConjugateGradientOptimizer.BracketingStep</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.Formula.html" title="enum in org.apache.commons.math3.optim.nonlinear.scalar.gradient"><span class="strong">NonLinearConjugateGradientOptimizer.Formula</span></a> - Enum in <a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/package-summary.html">org.apache.commons.math3.optim.nonlinear.scalar.gradient</a></dt>
<dd>
<div class="block">Available choices of update formulas for the updating the parameter
 that is used to compute the successive conjugate search directions.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.IdentityPreconditioner.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.gradient"><span class="strong">NonLinearConjugateGradientOptimizer.IdentityPreconditioner</span></a> - Class in <a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/package-summary.html">org.apache.commons.math3.optim.nonlinear.scalar.gradient</a></dt>
<dd>
<div class="block">Default identity preconditioner.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.IdentityPreconditioner.html#NonLinearConjugateGradientOptimizer.IdentityPreconditioner()">NonLinearConjugateGradientOptimizer.IdentityPreconditioner()</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.gradient.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.IdentityPreconditioner.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.gradient">NonLinearConjugateGradientOptimizer.IdentityPreconditioner</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optimization/general/NonLinearConjugateGradientOptimizer.IdentityPreconditioner.html" title="class in org.apache.commons.math3.optimization.general"><span class="strong">NonLinearConjugateGradientOptimizer.IdentityPreconditioner</span></a> - Class in <a href="./org/apache/commons/math3/optimization/general/package-summary.html">org.apache.commons.math3.optimization.general</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Default identity preconditioner.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/NonLinearConjugateGradientOptimizer.IdentityPreconditioner.html#NonLinearConjugateGradientOptimizer.IdentityPreconditioner()">NonLinearConjugateGradientOptimizer.IdentityPreconditioner()</a></span> - Constructor for class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/NonLinearConjugateGradientOptimizer.IdentityPreconditioner.html" title="class in org.apache.commons.math3.optimization.general">NonLinearConjugateGradientOptimizer.IdentityPreconditioner</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/exception/NonMonotonicSequenceException.html" title="class in org.apache.commons.math3.exception"><span class="strong">NonMonotonicSequenceException</span></a> - Exception in <a href="./org/apache/commons/math3/exception/package-summary.html">org.apache.commons.math3.exception</a></dt>
<dd>
<div class="block">Exception to be thrown when the a sequence of values is not monotonically
 increasing or decreasing.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/NonMonotonicSequenceException.html#NonMonotonicSequenceException(java.lang.Number, java.lang.Number, int)">NonMonotonicSequenceException(Number, Number, int)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/NonMonotonicSequenceException.html" title="class in org.apache.commons.math3.exception">NonMonotonicSequenceException</a></dt>
<dd>
<div class="block">Construct the exception.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/NonMonotonicSequenceException.html#NonMonotonicSequenceException(java.lang.Number, java.lang.Number, int, org.apache.commons.math3.util.MathArrays.OrderDirection, boolean)">NonMonotonicSequenceException(Number, Number, int, MathArrays.OrderDirection, boolean)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/NonMonotonicSequenceException.html" title="class in org.apache.commons.math3.exception">NonMonotonicSequenceException</a></dt>
<dd>
<div class="block">Construct the exception.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/linear/NonNegativeConstraint.html" title="class in org.apache.commons.math3.optim.linear"><span class="strong">NonNegativeConstraint</span></a> - Class in <a href="./org/apache/commons/math3/optim/linear/package-summary.html">org.apache.commons.math3.optim.linear</a></dt>
<dd>
<div class="block">A constraint for a linear optimization problem indicating whether all
 variables must be restricted to non-negative values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/NonNegativeConstraint.html#NonNegativeConstraint(boolean)">NonNegativeConstraint(boolean)</a></span> - Constructor for class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/NonNegativeConstraint.html" title="class in org.apache.commons.math3.optim.linear">NonNegativeConstraint</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/linear/NonPositiveDefiniteMatrixException.html" title="class in org.apache.commons.math3.linear"><span class="strong">NonPositiveDefiniteMatrixException</span></a> - Exception in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Exception to be thrown when a positive definite matrix is expected.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/NonPositiveDefiniteMatrixException.html#NonPositiveDefiniteMatrixException(double, int, double)">NonPositiveDefiniteMatrixException(double, int, double)</a></span> - Constructor for exception org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/NonPositiveDefiniteMatrixException.html" title="class in org.apache.commons.math3.linear">NonPositiveDefiniteMatrixException</a></dt>
<dd>
<div class="block">Construct an exception.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/NonPositiveDefiniteOperatorException.html" title="class in org.apache.commons.math3.linear"><span class="strong">NonPositiveDefiniteOperatorException</span></a> - Exception in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Exception to be thrown when a symmetric, definite positive
 <a href="./org/apache/commons/math3/linear/RealLinearOperator.html" title="class in org.apache.commons.math3.linear"><code>RealLinearOperator</code></a> is expected.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/NonPositiveDefiniteOperatorException.html#NonPositiveDefiniteOperatorException()">NonPositiveDefiniteOperatorException()</a></span> - Constructor for exception org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/NonPositiveDefiniteOperatorException.html" title="class in org.apache.commons.math3.linear">NonPositiveDefiniteOperatorException</a></dt>
<dd>
<div class="block">Creates a new instance of this class.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/NonSelfAdjointOperatorException.html" title="class in org.apache.commons.math3.linear"><span class="strong">NonSelfAdjointOperatorException</span></a> - Exception in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Exception to be thrown when a self-adjoint <a href="./org/apache/commons/math3/linear/RealLinearOperator.html" title="class in org.apache.commons.math3.linear"><code>RealLinearOperator</code></a>
 is expected.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/NonSelfAdjointOperatorException.html#NonSelfAdjointOperatorException()">NonSelfAdjointOperatorException()</a></span> - Constructor for exception org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/NonSelfAdjointOperatorException.html" title="class in org.apache.commons.math3.linear">NonSelfAdjointOperatorException</a></dt>
<dd>
<div class="block">Creates a new instance of this class.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/NonSquareMatrixException.html" title="class in org.apache.commons.math3.linear"><span class="strong">NonSquareMatrixException</span></a> - Exception in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Exception to be thrown when a square matrix is expected.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/NonSquareMatrixException.html#NonSquareMatrixException(int, int)">NonSquareMatrixException(int, int)</a></span> - Constructor for exception org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/NonSquareMatrixException.html" title="class in org.apache.commons.math3.linear">NonSquareMatrixException</a></dt>
<dd>
<div class="block">Construct an exception from the mismatched dimensions.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/NonSquareOperatorException.html" title="class in org.apache.commons.math3.linear"><span class="strong">NonSquareOperatorException</span></a> - Exception in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Exception to be thrown when a square linear operator is expected.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/NonSquareOperatorException.html#NonSquareOperatorException(int, int)">NonSquareOperatorException(int, int)</a></span> - Constructor for exception org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/NonSquareOperatorException.html" title="class in org.apache.commons.math3.linear">NonSquareOperatorException</a></dt>
<dd>
<div class="block">Construct an exception from the mismatched dimensions.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/NonSymmetricMatrixException.html" title="class in org.apache.commons.math3.linear"><span class="strong">NonSymmetricMatrixException</span></a> - Exception in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Exception to be thrown when a symmetric matrix is expected.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/NonSymmetricMatrixException.html#NonSymmetricMatrixException(int, int, double)">NonSymmetricMatrixException(int, int, double)</a></span> - Constructor for exception org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/NonSymmetricMatrixException.html" title="class in org.apache.commons.math3.linear">NonSymmetricMatrixException</a></dt>
<dd>
<div class="block">Construct an exception.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/MultistepIntegrator.html#nordsieck">nordsieck</a></span> - Variable in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/MultistepIntegrator.html" title="class in org.apache.commons.math3.ode">MultistepIntegrator</a></dt>
<dd>
<div class="block">Nordsieck matrix of the higher scaled derivatives.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/sampling/NordsieckStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling"><span class="strong">NordsieckStepInterpolator</span></a> - Class in <a href="./org/apache/commons/math3/ode/sampling/package-summary.html">org.apache.commons.math3.ode.sampling</a></dt>
<dd>
<div class="block">This class implements an interpolator for integrators using Nordsieck representation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/NordsieckStepInterpolator.html#NordsieckStepInterpolator()">NordsieckStepInterpolator()</a></span> - Constructor for class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/NordsieckStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">NordsieckStepInterpolator</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/NordsieckStepInterpolator.html#NordsieckStepInterpolator(org.apache.commons.math3.ode.sampling.NordsieckStepInterpolator)">NordsieckStepInterpolator(NordsieckStepInterpolator)</a></span> - Constructor for class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/NordsieckStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">NordsieckStepInterpolator</a></dt>
<dd>
<div class="block">Copy constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/PoissonDistribution.html#normalApproximateProbability(int)">normalApproximateProbability(int)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/PoissonDistribution.html" title="class in org.apache.commons.math3.distribution">PoissonDistribution</a></dt>
<dd>
<div class="block">Calculates the Poisson distribution function using a normal
 approximation.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/interval/NormalApproximationInterval.html" title="class in org.apache.commons.math3.stat.interval"><span class="strong">NormalApproximationInterval</span></a> - Class in <a href="./org/apache/commons/math3/stat/interval/package-summary.html">org.apache.commons.math3.stat.interval</a></dt>
<dd>
<div class="block">Implements the normal approximation method for creating a binomial proportion confidence interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/interval/NormalApproximationInterval.html#NormalApproximationInterval()">NormalApproximationInterval()</a></span> - Constructor for class org.apache.commons.math3.stat.interval.<a href="./org/apache/commons/math3/stat/interval/NormalApproximationInterval.html" title="class in org.apache.commons.math3.stat.interval">NormalApproximationInterval</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/distribution/NormalDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">NormalDistribution</span></a> - Class in <a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a></dt>
<dd>
<div class="block">Implementation of the normal (gaussian) distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/NormalDistribution.html#NormalDistribution()">NormalDistribution()</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/NormalDistribution.html" title="class in org.apache.commons.math3.distribution">NormalDistribution</a></dt>
<dd>
<div class="block">Create a normal distribution with mean equal to zero and standard
 deviation equal to one.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/NormalDistribution.html#NormalDistribution(double, double)">NormalDistribution(double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/NormalDistribution.html" title="class in org.apache.commons.math3.distribution">NormalDistribution</a></dt>
<dd>
<div class="block">Create a normal distribution using the given mean and standard deviation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/NormalDistribution.html#NormalDistribution(double, double, double)">NormalDistribution(double, double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/NormalDistribution.html" title="class in org.apache.commons.math3.distribution">NormalDistribution</a></dt>
<dd>
<div class="block">Create a normal distribution using the given mean, standard deviation and
 inverse cumulative distribution accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/NormalDistribution.html#NormalDistribution(org.apache.commons.math3.random.RandomGenerator, double, double)">NormalDistribution(RandomGenerator, double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/NormalDistribution.html" title="class in org.apache.commons.math3.distribution">NormalDistribution</a></dt>
<dd>
<div class="block">Creates a normal distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/NormalDistribution.html#NormalDistribution(org.apache.commons.math3.random.RandomGenerator, double, double, double)">NormalDistribution(RandomGenerator, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/NormalDistribution.html" title="class in org.apache.commons.math3.distribution">NormalDistribution</a></dt>
<dd>
<div class="block">Creates a normal distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Quaternion.html#normalize()">normalize()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex">Quaternion</a></dt>
<dd>
<div class="block">Computes the normalized quaternion (the versor of the instance).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#normalize()">normalize()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Get a normalized vector aligned with the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#normalize()">normalize()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Get a normalized vector aligned with the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#normalize()">normalize()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Get a normalized vector aligned with the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#normalize()">normalize()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Get a normalized vector aligned with the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/Vector.html#normalize()">normalize()</a></span> - Method in interface org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/Vector.html" title="interface in org.apache.commons.math3.geometry">Vector</a></dt>
<dd>
<div class="block">Get a normalized vector aligned with the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/StatUtils.html#normalize(double[])">normalize(double[])</a></span> - Static method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/StatUtils.html" title="class in org.apache.commons.math3.stat">StatUtils</a></dt>
<dd>
<div class="block">Normalize (standardize) the sample, so it is has a mean of 0 and a standard deviation of 1.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathUtils.html#normalizeAngle(double, double)">normalizeAngle(double, double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathUtils.html" title="class in org.apache.commons.math3.util">MathUtils</a></dt>
<dd>
<div class="block">Normalize an angle in a 2&pi; wide interval around a center value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#normalizeArray(double[], double)">normalizeArray(double[], double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Normalizes an array to make it sum to a specified value.</div>
</dd>
<dt><a href="./org/apache/commons/math3/random/NormalizedRandomGenerator.html" title="interface in org.apache.commons.math3.random"><span class="strong">NormalizedRandomGenerator</span></a> - Interface in <a href="./org/apache/commons/math3/random/package-summary.html">org.apache.commons.math3.random</a></dt>
<dd>
<div class="block">This interface represent a normalized random generator for
 scalars.</div>
</dd>
<dt><a href="./org/apache/commons/math3/exception/NotANumberException.html" title="class in org.apache.commons.math3.exception"><span class="strong">NotANumberException</span></a> - Exception in <a href="./org/apache/commons/math3/exception/package-summary.html">org.apache.commons.math3.exception</a></dt>
<dd>
<div class="block">Exception to be thrown when a number is not a number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/NotANumberException.html#NotANumberException()">NotANumberException()</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/NotANumberException.html" title="class in org.apache.commons.math3.exception">NotANumberException</a></dt>
<dd>
<div class="block">Construct the exception.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/threed/NotARotationMatrixException.html" title="class in org.apache.commons.math3.geometry.euclidean.threed"><span class="strong">NotARotationMatrixException</span></a> - Exception in <a href="./org/apache/commons/math3/geometry/euclidean/threed/package-summary.html">org.apache.commons.math3.geometry.euclidean.threed</a></dt>
<dd>
<div class="block">This class represents exceptions thrown while building rotations
 from matrices.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/NotARotationMatrixException.html#NotARotationMatrixException(org.apache.commons.math3.exception.util.Localizable, java.lang.Object...)">NotARotationMatrixException(Localizable, Object...)</a></span> - Constructor for exception org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/NotARotationMatrixException.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">NotARotationMatrixException</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/exception/NotFiniteNumberException.html" title="class in org.apache.commons.math3.exception"><span class="strong">NotFiniteNumberException</span></a> - Exception in <a href="./org/apache/commons/math3/exception/package-summary.html">org.apache.commons.math3.exception</a></dt>
<dd>
<div class="block">Exception to be thrown when a number is not finite.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/NotFiniteNumberException.html#NotFiniteNumberException(java.lang.Number, java.lang.Object...)">NotFiniteNumberException(Number, Object...)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/NotFiniteNumberException.html" title="class in org.apache.commons.math3.exception">NotFiniteNumberException</a></dt>
<dd>
<div class="block">Construct the exception.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/NotFiniteNumberException.html#NotFiniteNumberException(org.apache.commons.math3.exception.util.Localizable, java.lang.Number, java.lang.Object...)">NotFiniteNumberException(Localizable, Number, Object...)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/NotFiniteNumberException.html" title="class in org.apache.commons.math3.exception">NotFiniteNumberException</a></dt>
<dd>
<div class="block">Construct the exception with a specific context.</div>
</dd>
<dt><a href="./org/apache/commons/math3/exception/NotPositiveException.html" title="class in org.apache.commons.math3.exception"><span class="strong">NotPositiveException</span></a> - Exception in <a href="./org/apache/commons/math3/exception/package-summary.html">org.apache.commons.math3.exception</a></dt>
<dd>
<div class="block">Exception to be thrown when the argument is negative.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/NotPositiveException.html#NotPositiveException(java.lang.Number)">NotPositiveException(Number)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/NotPositiveException.html" title="class in org.apache.commons.math3.exception">NotPositiveException</a></dt>
<dd>
<div class="block">Construct the exception.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/NotPositiveException.html#NotPositiveException(org.apache.commons.math3.exception.util.Localizable, java.lang.Number)">NotPositiveException(Localizable, Number)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/NotPositiveException.html" title="class in org.apache.commons.math3.exception">NotPositiveException</a></dt>
<dd>
<div class="block">Construct the exception with a specific context.</div>
</dd>
<dt><a href="./org/apache/commons/math3/exception/NotStrictlyPositiveException.html" title="class in org.apache.commons.math3.exception"><span class="strong">NotStrictlyPositiveException</span></a> - Exception in <a href="./org/apache/commons/math3/exception/package-summary.html">org.apache.commons.math3.exception</a></dt>
<dd>
<div class="block">Exception to be thrown when the argument is not greater than 0.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/NotStrictlyPositiveException.html#NotStrictlyPositiveException(java.lang.Number)">NotStrictlyPositiveException(Number)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/NotStrictlyPositiveException.html" title="class in org.apache.commons.math3.exception">NotStrictlyPositiveException</a></dt>
<dd>
<div class="block">Construct the exception.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/NotStrictlyPositiveException.html#NotStrictlyPositiveException(org.apache.commons.math3.exception.util.Localizable, java.lang.Number)">NotStrictlyPositiveException(Localizable, Number)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/NotStrictlyPositiveException.html" title="class in org.apache.commons.math3.exception">NotStrictlyPositiveException</a></dt>
<dd>
<div class="block">Construct the exception with a specific context.</div>
</dd>
<dt><a href="./org/apache/commons/math3/genetics/NPointCrossover.html" title="class in org.apache.commons.math3.genetics"><span class="strong">NPointCrossover</span></a>&lt;<a href="./org/apache/commons/math3/genetics/NPointCrossover.html" title="type parameter in NPointCrossover">T</a>&gt; - Class in <a href="./org/apache/commons/math3/genetics/package-summary.html">org.apache.commons.math3.genetics</a></dt>
<dd>
<div class="block">N-point crossover policy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/NPointCrossover.html#NPointCrossover(int)">NPointCrossover(int)</a></span> - Constructor for class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/NPointCrossover.html" title="class in org.apache.commons.math3.genetics">NPointCrossover</a></dt>
<dd>
<div class="block">Creates a new <a href="./org/apache/commons/math3/genetics/NPointCrossover.html" title="class in org.apache.commons.math3.genetics"><code>NPointCrossover</code></a> policy using the given number of points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#nthRoot(int)">nthRoot(int)</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Computes the n-th roots of this complex number.</div>
</dd>
<dt><a href="./org/apache/commons/math3/exception/NullArgumentException.html" title="class in org.apache.commons.math3.exception"><span class="strong">NullArgumentException</span></a> - Exception in <a href="./org/apache/commons/math3/exception/package-summary.html">org.apache.commons.math3.exception</a></dt>
<dd>
<div class="block">All conditions checks that fail due to a <code>null</code> argument must throw
 this exception.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/NullArgumentException.html#NullArgumentException()">NullArgumentException()</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/NullArgumentException.html" title="class in org.apache.commons.math3.exception">NullArgumentException</a></dt>
<dd>
<div class="block">Default constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/NullArgumentException.html#NullArgumentException(org.apache.commons.math3.exception.util.Localizable, java.lang.Object...)">NullArgumentException(Localizable, Object...)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/NullArgumentException.html" title="class in org.apache.commons.math3.exception">NullArgumentException</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/exception/NumberIsTooLargeException.html" title="class in org.apache.commons.math3.exception"><span class="strong">NumberIsTooLargeException</span></a> - Exception in <a href="./org/apache/commons/math3/exception/package-summary.html">org.apache.commons.math3.exception</a></dt>
<dd>
<div class="block">Exception to be thrown when a number is too large.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/NumberIsTooLargeException.html#NumberIsTooLargeException(java.lang.Number, java.lang.Number, boolean)">NumberIsTooLargeException(Number, Number, boolean)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/NumberIsTooLargeException.html" title="class in org.apache.commons.math3.exception">NumberIsTooLargeException</a></dt>
<dd>
<div class="block">Construct the exception.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/NumberIsTooLargeException.html#NumberIsTooLargeException(org.apache.commons.math3.exception.util.Localizable, java.lang.Number, java.lang.Number, boolean)">NumberIsTooLargeException(Localizable, Number, Number, boolean)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/NumberIsTooLargeException.html" title="class in org.apache.commons.math3.exception">NumberIsTooLargeException</a></dt>
<dd>
<div class="block">Construct the exception with a specific context.</div>
</dd>
<dt><a href="./org/apache/commons/math3/exception/NumberIsTooSmallException.html" title="class in org.apache.commons.math3.exception"><span class="strong">NumberIsTooSmallException</span></a> - Exception in <a href="./org/apache/commons/math3/exception/package-summary.html">org.apache.commons.math3.exception</a></dt>
<dd>
<div class="block">Exception to be thrown when a number is too small.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/NumberIsTooSmallException.html#NumberIsTooSmallException(java.lang.Number, java.lang.Number, boolean)">NumberIsTooSmallException(Number, Number, boolean)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/NumberIsTooSmallException.html" title="class in org.apache.commons.math3.exception">NumberIsTooSmallException</a></dt>
<dd>
<div class="block">Construct the exception.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/NumberIsTooSmallException.html#NumberIsTooSmallException(org.apache.commons.math3.exception.util.Localizable, java.lang.Number, java.lang.Number, boolean)">NumberIsTooSmallException(Localizable, Number, Number, boolean)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/NumberIsTooSmallException.html" title="class in org.apache.commons.math3.exception">NumberIsTooSmallException</a></dt>
<dd>
<div class="block">Construct the exception with a specific context.</div>
</dd>
<dt><a href="./org/apache/commons/math3/util/NumberTransformer.html" title="interface in org.apache.commons.math3.util"><span class="strong">NumberTransformer</span></a> - Interface in <a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a></dt>
<dd>
<div class="block">Subclasses implementing this interface can transform Objects to doubles.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#numVars()">numVars()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Find the number of variables.</div>
</dd>
</dl>
<a name="_O_">
<!--   -->
</a>
<h2 class="title">O</h2>
<dl>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#objective">objective</a></span> - Variable in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1.</i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/scalar/ObjectiveFunction.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar"><span class="strong">ObjectiveFunction</span></a> - Class in <a href="./org/apache/commons/math3/optim/nonlinear/scalar/package-summary.html">org.apache.commons.math3.optim.nonlinear.scalar</a></dt>
<dd>
<div class="block">Scalar function to be optimized.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/ObjectiveFunction.html#ObjectiveFunction(org.apache.commons.math3.analysis.MultivariateFunction)">ObjectiveFunction(MultivariateFunction)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/ObjectiveFunction.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar">ObjectiveFunction</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/scalar/ObjectiveFunctionGradient.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar"><span class="strong">ObjectiveFunctionGradient</span></a> - Class in <a href="./org/apache/commons/math3/optim/nonlinear/scalar/package-summary.html">org.apache.commons.math3.optim.nonlinear.scalar</a></dt>
<dd>
<div class="block">Gradient of the scalar function to be optimized.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/ObjectiveFunctionGradient.html#ObjectiveFunctionGradient(org.apache.commons.math3.analysis.MultivariateVectorFunction)">ObjectiveFunctionGradient(MultivariateVectorFunction)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/ObjectiveFunctionGradient.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar">ObjectiveFunctionGradient</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#OCTAVE_FORMAT">OCTAVE_FORMAT</a></span> - Static variable in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">A format for <a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear"><code>RealMatrix</code></a> objects compatible with octave.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/ODEIntegrator.html" title="interface in org.apache.commons.math3.ode"><span class="strong">ODEIntegrator</span></a> - Interface in <a href="./org/apache/commons/math3/ode/package-summary.html">org.apache.commons.math3.ode</a></dt>
<dd>
<div class="block">This interface defines the common parts shared by integrators
 for first and second order differential equations.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/regression/OLSMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression"><span class="strong">OLSMultipleLinearRegression</span></a> - Class in <a href="./org/apache/commons/math3/stat/regression/package-summary.html">org.apache.commons.math3.stat.regression</a></dt>
<dd>
<div class="block">Implements ordinary least squares (OLS) to estimate the parameters of a
 multiple linear regression model.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/OLSMultipleLinearRegression.html#OLSMultipleLinearRegression()">OLSMultipleLinearRegression()</a></span> - Constructor for class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/OLSMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">OLSMultipleLinearRegression</a></dt>
<dd>
<div class="block">Create an empty OLSMultipleLinearRegression instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/OLSMultipleLinearRegression.html#OLSMultipleLinearRegression(double)">OLSMultipleLinearRegression(double)</a></span> - Constructor for class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/OLSMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">OLSMultipleLinearRegression</a></dt>
<dd>
<div class="block">Create an empty OLSMultipleLinearRegression instance, using the given
 singularity threshold for the QR decomposition.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#ONE">ONE</a></span> - Static variable in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">A complex number representing "1.0 + 0.0i"</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#ONE">ONE</a></span> - Static variable in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">A fraction representing "1".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#ONE">ONE</a></span> - Static variable in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">A fraction representing "1".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#ONE">ONE</a></span> - Static variable in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Unit (coordinates: 1).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#ONE">ONE</a></span> - Static variable in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dd>
<div class="block">A big real representing 1.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#ONE">ONE</a></span> - Static variable in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">The constant value of <code>1d</code> as a <code>Decimal64</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#ONE_FIFTH">ONE_FIFTH</a></span> - Static variable in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">A fraction representing "1/5".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#ONE_FIFTH">ONE_FIFTH</a></span> - Static variable in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">A fraction representing "1/5".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#ONE_HALF">ONE_HALF</a></span> - Static variable in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">A fraction representing "1/2".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#ONE_HALF">ONE_HALF</a></span> - Static variable in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">A fraction representing "1/2".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#ONE_QUARTER">ONE_QUARTER</a></span> - Static variable in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">A fraction representing "1/4".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#ONE_QUARTER">ONE_QUARTER</a></span> - Static variable in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">A fraction representing "1/4".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#ONE_THIRD">ONE_THIRD</a></span> - Static variable in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">A fraction representing "1/3".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#ONE_THIRD">ONE_THIRD</a></span> - Static variable in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">A fraction representing "1/3".</div>
</dd>
<dt><a href="./org/apache/commons/math3/genetics/OnePointCrossover.html" title="class in org.apache.commons.math3.genetics"><span class="strong">OnePointCrossover</span></a>&lt;<a href="./org/apache/commons/math3/genetics/OnePointCrossover.html" title="type parameter in OnePointCrossover">T</a>&gt; - Class in <a href="./org/apache/commons/math3/genetics/package-summary.html">org.apache.commons.math3.genetics</a></dt>
<dd>
<div class="block">One point crossover policy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/OnePointCrossover.html#OnePointCrossover()">OnePointCrossover()</a></span> - Constructor for class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/OnePointCrossover.html" title="class in org.apache.commons.math3.genetics">OnePointCrossover</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/stat/inference/OneWayAnova.html" title="class in org.apache.commons.math3.stat.inference"><span class="strong">OneWayAnova</span></a> - Class in <a href="./org/apache/commons/math3/stat/inference/package-summary.html">org.apache.commons.math3.stat.inference</a></dt>
<dd>
<div class="block">Implements one-way ANOVA (analysis of variance) statistics.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/OneWayAnova.html#OneWayAnova()">OneWayAnova()</a></span> - Constructor for class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/OneWayAnova.html" title="class in org.apache.commons.math3.stat.inference">OneWayAnova</a></dt>
<dd>
<div class="block">Default constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#oneWayAnovaFValue(java.util.Collection)">oneWayAnovaFValue(Collection&lt;double[]&gt;)</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#oneWayAnovaPValue(java.util.Collection)">oneWayAnovaPValue(Collection&lt;double[]&gt;)</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#oneWayAnovaTest(java.util.Collection, double)">oneWayAnovaTest(Collection&lt;double[]&gt;, double)</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.html" title="class in org.apache.commons.math3.util"><span class="strong">OpenIntToDoubleHashMap</span></a> - Class in <a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a></dt>
<dd>
<div class="block">Open addressed map from int to double.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.html#OpenIntToDoubleHashMap()">OpenIntToDoubleHashMap()</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.html" title="class in org.apache.commons.math3.util">OpenIntToDoubleHashMap</a></dt>
<dd>
<div class="block">Build an empty map with default size and using NaN for missing entries.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.html#OpenIntToDoubleHashMap(double)">OpenIntToDoubleHashMap(double)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.html" title="class in org.apache.commons.math3.util">OpenIntToDoubleHashMap</a></dt>
<dd>
<div class="block">Build an empty map with default size</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.html#OpenIntToDoubleHashMap(int)">OpenIntToDoubleHashMap(int)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.html" title="class in org.apache.commons.math3.util">OpenIntToDoubleHashMap</a></dt>
<dd>
<div class="block">Build an empty map with specified size and using NaN for missing entries.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.html#OpenIntToDoubleHashMap(int, double)">OpenIntToDoubleHashMap(int, double)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.html" title="class in org.apache.commons.math3.util">OpenIntToDoubleHashMap</a></dt>
<dd>
<div class="block">Build an empty map with specified size.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.html#OpenIntToDoubleHashMap(org.apache.commons.math3.util.OpenIntToDoubleHashMap)">OpenIntToDoubleHashMap(OpenIntToDoubleHashMap)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.html" title="class in org.apache.commons.math3.util">OpenIntToDoubleHashMap</a></dt>
<dd>
<div class="block">Copy constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.Iterator.html" title="class in org.apache.commons.math3.util"><span class="strong">OpenIntToDoubleHashMap.Iterator</span></a> - Class in <a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a></dt>
<dd>
<div class="block">Iterator class for the map.</div>
</dd>
<dt><a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.html" title="class in org.apache.commons.math3.util"><span class="strong">OpenIntToFieldHashMap</span></a>&lt;<a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.html" title="type parameter in OpenIntToFieldHashMap">T</a> extends <a href="./org/apache/commons/math3/FieldElement.html" title="interface in org.apache.commons.math3">FieldElement</a>&lt;<a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.html" title="type parameter in OpenIntToFieldHashMap">T</a>&gt;&gt; - Class in <a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a></dt>
<dd>
<div class="block">Open addressed map from int to FieldElement.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.html#OpenIntToFieldHashMap(org.apache.commons.math3.Field)">OpenIntToFieldHashMap(Field&lt;T&gt;)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.html" title="class in org.apache.commons.math3.util">OpenIntToFieldHashMap</a></dt>
<dd>
<div class="block">Build an empty map with default size and using zero for missing entries.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.html#OpenIntToFieldHashMap(org.apache.commons.math3.Field, T)">OpenIntToFieldHashMap(Field&lt;T&gt;, T)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.html" title="class in org.apache.commons.math3.util">OpenIntToFieldHashMap</a></dt>
<dd>
<div class="block">Build an empty map with default size</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.html#OpenIntToFieldHashMap(org.apache.commons.math3.Field, int)">OpenIntToFieldHashMap(Field&lt;T&gt;, int)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.html" title="class in org.apache.commons.math3.util">OpenIntToFieldHashMap</a></dt>
<dd>
<div class="block">Build an empty map with specified size and using zero for missing entries.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.html#OpenIntToFieldHashMap(org.apache.commons.math3.Field, int, T)">OpenIntToFieldHashMap(Field&lt;T&gt;, int, T)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.html" title="class in org.apache.commons.math3.util">OpenIntToFieldHashMap</a></dt>
<dd>
<div class="block">Build an empty map with specified size.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.html#OpenIntToFieldHashMap(org.apache.commons.math3.util.OpenIntToFieldHashMap)">OpenIntToFieldHashMap(OpenIntToFieldHashMap&lt;T&gt;)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.html" title="class in org.apache.commons.math3.util">OpenIntToFieldHashMap</a></dt>
<dd>
<div class="block">Copy constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.Iterator.html" title="class in org.apache.commons.math3.util"><span class="strong">OpenIntToFieldHashMap.Iterator</span></a> - Class in <a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a></dt>
<dd>
<div class="block">Iterator class for the map.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/OpenMapRealMatrix.html" title="class in org.apache.commons.math3.linear"><span class="strong">OpenMapRealMatrix</span></a> - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Sparse matrix implementation based on an open addressed map.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealMatrix.html#OpenMapRealMatrix(int, int)">OpenMapRealMatrix(int, int)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealMatrix.html" title="class in org.apache.commons.math3.linear">OpenMapRealMatrix</a></dt>
<dd>
<div class="block">Build a sparse matrix with the supplied row and column dimensions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealMatrix.html#OpenMapRealMatrix(org.apache.commons.math3.linear.OpenMapRealMatrix)">OpenMapRealMatrix(OpenMapRealMatrix)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealMatrix.html" title="class in org.apache.commons.math3.linear">OpenMapRealMatrix</a></dt>
<dd>
<div class="block">Build a matrix by copying another one.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear"><span class="strong">OpenMapRealVector</span></a> - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">This class implements the <a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear"><code>RealVector</code></a> interface with a
 <a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.html" title="class in org.apache.commons.math3.util"><code>OpenIntToDoubleHashMap</code></a> backing store.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#OpenMapRealVector()">OpenMapRealVector()</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Build a 0-length vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#OpenMapRealVector(int)">OpenMapRealVector(int)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Construct a vector of zeroes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#OpenMapRealVector(int, double)">OpenMapRealVector(int, double)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Construct a vector of zeroes, specifying zero tolerance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#OpenMapRealVector(org.apache.commons.math3.linear.OpenMapRealVector, int)">OpenMapRealVector(OpenMapRealVector, int)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Build a resized vector, for use with append.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#OpenMapRealVector(int, int)">OpenMapRealVector(int, int)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Build a vector with known the sparseness (for advanced use only).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#OpenMapRealVector(int, int, double)">OpenMapRealVector(int, int, double)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Build a vector with known the sparseness and zero tolerance
 setting (for advanced use only).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#OpenMapRealVector(double[])">OpenMapRealVector(double[])</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Create from an array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#OpenMapRealVector(double[], double)">OpenMapRealVector(double[], double)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Create from an array, specifying zero tolerance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#OpenMapRealVector(java.lang.Double[])">OpenMapRealVector(Double[])</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Create from an array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#OpenMapRealVector(java.lang.Double[], double)">OpenMapRealVector(Double[], double)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Create from an array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#OpenMapRealVector(org.apache.commons.math3.linear.OpenMapRealVector)">OpenMapRealVector(OpenMapRealVector)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Copy constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#OpenMapRealVector(org.apache.commons.math3.linear.RealVector)">OpenMapRealVector(RealVector)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Generic copy constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/OpenMapRealVector.OpenMapEntry.html" title="class in org.apache.commons.math3.linear"><span class="strong">OpenMapRealVector.OpenMapEntry</span></a> - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Implementation of <code>Entry</code> optimized for OpenMap.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.OpenMapEntry.html#OpenMapRealVector.OpenMapEntry(org.apache.commons.math3.util.OpenIntToDoubleHashMap.Iterator)">OpenMapRealVector.OpenMapEntry(OpenIntToDoubleHashMap.Iterator)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.OpenMapEntry.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector.OpenMapEntry</a></dt>
<dd>
<div class="block">Build an entry from an iterator point to an element.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/OpenMapRealVector.OpenMapSparseIterator.html" title="class in org.apache.commons.math3.linear"><span class="strong">OpenMapRealVector.OpenMapSparseIterator</span></a> - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Iterator class to do iteration over just the non-zero elements.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.OpenMapSparseIterator.html#OpenMapRealVector.OpenMapSparseIterator()">OpenMapRealVector.OpenMapSparseIterator()</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.OpenMapSparseIterator.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector.OpenMapSparseIterator</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#operate(T[])">operate(T[])</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Returns the result of multiplying this by the vector <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#operate(org.apache.commons.math3.linear.FieldVector)">operate(FieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Returns the result of multiplying this by the vector <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#operate(double[])">operate(double[])</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Returns the result of multiplying this by the vector <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#operate(org.apache.commons.math3.linear.RealVector)">operate(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Returns the result of multiplying <code>this</code> by the vector <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html#operate(T[])">operate(T[])</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowFieldMatrix</a></dt>
<dd>
<div class="block">Returns the result of multiplying this by the vector <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html#operate(double[])">operate(double[])</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowRealMatrix</a></dt>
<dd>
<div class="block">Returns the result of multiplying this by the vector <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#operate(T[])">operate(T[])</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Returns the result of multiplying this by the vector <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#operate(double[])">operate(double[])</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Returns the result of multiplying this by the vector <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DiagonalMatrix.html#operate(double[])">operate(double[])</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DiagonalMatrix.html" title="class in org.apache.commons.math3.linear">DiagonalMatrix</a></dt>
<dd>
<div class="block">Returns the result of multiplying this by the vector <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#operate(T[])">operate(T[])</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Returns the result of multiplying this by the vector <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#operate(org.apache.commons.math3.linear.FieldVector)">operate(FieldVector&lt;T&gt;)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Returns the result of multiplying this by the vector <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/JacobiPreconditioner.html#operate(org.apache.commons.math3.linear.RealVector)">operate(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/JacobiPreconditioner.html" title="class in org.apache.commons.math3.linear">JacobiPreconditioner</a></dt>
<dd>
<div class="block">Returns the result of multiplying <code>this</code> by the vector <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealLinearOperator.html#operate(org.apache.commons.math3.linear.RealVector)">operate(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealLinearOperator.html" title="class in org.apache.commons.math3.linear">RealLinearOperator</a></dt>
<dd>
<div class="block">Returns the result of multiplying <code>this</code> by the vector <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#operate(double[])">operate(double[])</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Returns the result of multiplying this by the vector <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#operate(org.apache.commons.math3.linear.RealVector)">operate(RealVector)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Returns the result of multiplying this by the vector <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealLinearOperator.html#operateTranspose(org.apache.commons.math3.linear.RealVector)">operateTranspose(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealLinearOperator.html" title="class in org.apache.commons.math3.linear">RealLinearOperator</a></dt>
<dd>
<div class="block">Returns the result of multiplying the transpose of <code>this</code> operator
 by the vector <code>x</code> (optional operation).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ConjugateGradient.html#OPERATOR">OPERATOR</a></span> - Static variable in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ConjugateGradient.html" title="class in org.apache.commons.math3.linear">ConjugateGradient</a></dt>
<dd>
<div class="block">Key for the <a href="./org/apache/commons/math3/linear/#context">exception context</a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/Relationship.html#oppositeRelationship()">oppositeRelationship()</a></span> - Method in enum org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/Relationship.html" title="enum in org.apache.commons.math3.optim.linear">Relationship</a></dt>
<dd>
<div class="block">Gets the relationship obtained when multiplying all coefficients by -1.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/Relationship.html#oppositeRelationship()">oppositeRelationship()</a></span> - Method in enum org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/Relationship.html" title="enum in org.apache.commons.math3.optimization.linear">Relationship</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Get the relationship obtained when multiplying all coefficients by -1.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/OptimizationData.html" title="interface in org.apache.commons.math3.optim"><span class="strong">OptimizationData</span></a> - Interface in <a href="./org/apache/commons/math3/optim/package-summary.html">org.apache.commons.math3.optim</a></dt>
<dd>
<div class="block">Marker interface.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/OptimizationData.html" title="interface in org.apache.commons.math3.optimization"><span class="strong">OptimizationData</span></a> - Interface in <a href="./org/apache/commons/math3/optimization/package-summary.html">org.apache.commons.math3.optimization</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/OptimizationProblem.html" title="interface in org.apache.commons.math3.optim"><span class="strong">OptimizationProblem</span></a>&lt;<a href="./org/apache/commons/math3/optim/OptimizationProblem.html" title="type parameter in OptimizationProblem">PAIR</a>&gt; - Interface in <a href="./org/apache/commons/math3/optim/package-summary.html">org.apache.commons.math3.optim</a></dt>
<dd>
<div class="block">Common settings for all optimization problems.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/GaussNewtonOptimizer.html#optimize(org.apache.commons.math3.fitting.leastsquares.LeastSquaresProblem)">optimize(LeastSquaresProblem)</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/GaussNewtonOptimizer.html" title="class in org.apache.commons.math3.fitting.leastsquares">GaussNewtonOptimizer</a></dt>
<dd>
<div class="block">Solve the non-linear least squares problem.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresOptimizer.html#optimize(org.apache.commons.math3.fitting.leastsquares.LeastSquaresProblem)">optimize(LeastSquaresProblem)</a></span> - Method in interface org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresOptimizer.html" title="interface in org.apache.commons.math3.fitting.leastsquares">LeastSquaresOptimizer</a></dt>
<dd>
<div class="block">Solve the non-linear least squares problem.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LevenbergMarquardtOptimizer.html#optimize(org.apache.commons.math3.fitting.leastsquares.LeastSquaresProblem)">optimize(LeastSquaresProblem)</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LevenbergMarquardtOptimizer.html" title="class in org.apache.commons.math3.fitting.leastsquares">LevenbergMarquardtOptimizer</a></dt>
<dd>
<div class="block">Solve the non-linear least squares problem.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/BaseMultiStartMultivariateOptimizer.html#optimize(org.apache.commons.math3.optim.OptimizationData...)">optimize(OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/BaseMultiStartMultivariateOptimizer.html" title="class in org.apache.commons.math3.optim">BaseMultiStartMultivariateOptimizer</a></dt>
<dd>
<div class="block">Stores data and performs the optimization.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/BaseMultivariateOptimizer.html#optimize(org.apache.commons.math3.optim.OptimizationData...)">optimize(OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/BaseMultivariateOptimizer.html" title="class in org.apache.commons.math3.optim">BaseMultivariateOptimizer</a></dt>
<dd>
<div class="block">Stores data and performs the optimization.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/BaseOptimizer.html#optimize(org.apache.commons.math3.optim.OptimizationData...)">optimize(OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/BaseOptimizer.html" title="class in org.apache.commons.math3.optim">BaseOptimizer</a></dt>
<dd>
<div class="block">Stores data and performs the optimization.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/BaseOptimizer.html#optimize()">optimize()</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/BaseOptimizer.html" title="class in org.apache.commons.math3.optim">BaseOptimizer</a></dt>
<dd>
<div class="block">Performs the optimization.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/LinearOptimizer.html#optimize(org.apache.commons.math3.optim.OptimizationData...)">optimize(OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/LinearOptimizer.html" title="class in org.apache.commons.math3.optim.linear">LinearOptimizer</a></dt>
<dd>
<div class="block">Stores data and performs the optimization.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/SimplexSolver.html#optimize(org.apache.commons.math3.optim.OptimizationData...)">optimize(OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/SimplexSolver.html" title="class in org.apache.commons.math3.optim.linear">SimplexSolver</a></dt>
<dd>
<div class="block">Stores data and performs the optimization.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.html#optimize(org.apache.commons.math3.optim.OptimizationData...)">optimize(OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.gradient.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.gradient">NonLinearConjugateGradientOptimizer</a></dt>
<dd>
<div class="block">Stores data and performs the optimization.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/GradientMultivariateOptimizer.html#optimize(org.apache.commons.math3.optim.OptimizationData...)">optimize(OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/GradientMultivariateOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar">GradientMultivariateOptimizer</a></dt>
<dd>
<div class="block">Stores data and performs the optimization.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/MultivariateOptimizer.html#optimize(org.apache.commons.math3.optim.OptimizationData...)">optimize(OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/MultivariateOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar">MultivariateOptimizer</a></dt>
<dd>
<div class="block">Stores data and performs the optimization.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/CMAESOptimizer.html#optimize(org.apache.commons.math3.optim.OptimizationData...)">optimize(OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/CMAESOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">CMAESOptimizer</a></dt>
<dd>
<div class="block">Stores data and performs the optimization.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/SimplexOptimizer.html#optimize(org.apache.commons.math3.optim.OptimizationData...)">optimize(OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/SimplexOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">SimplexOptimizer</a></dt>
<dd>
<div class="block">Stores data and performs the optimization.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/AbstractLeastSquaresOptimizer.html#optimize(org.apache.commons.math3.optim.OptimizationData...)">optimize(OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.vector.jacobian.<a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector.jacobian">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Stores data and performs the optimization.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/JacobianMultivariateVectorOptimizer.html#optimize(org.apache.commons.math3.optim.OptimizationData...)">optimize(OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.vector.<a href="./org/apache/commons/math3/optim/nonlinear/vector/JacobianMultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector">JacobianMultivariateVectorOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Stores data and performs the optimization.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/MultivariateVectorOptimizer.html#optimize(org.apache.commons.math3.optim.OptimizationData...)">optimize(OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.vector.<a href="./org/apache/commons/math3/optim/nonlinear/vector/MultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector">MultivariateVectorOptimizer</a></dt>
<dd>
<div class="block">Stores data and performs the optimization.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/MultiStartUnivariateOptimizer.html#optimize(org.apache.commons.math3.optim.OptimizationData...)">optimize(OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/MultiStartUnivariateOptimizer.html" title="class in org.apache.commons.math3.optim.univariate">MultiStartUnivariateOptimizer</a></dt>
<dd>
<div class="block">Stores data and performs the optimization.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/UnivariateOptimizer.html#optimize(org.apache.commons.math3.optim.OptimizationData...)">optimize(OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/UnivariateOptimizer.html" title="class in org.apache.commons.math3.optim.univariate">UnivariateOptimizer</a></dt>
<dd>
<div class="block">Stores data and performs the optimization.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/BaseMultivariateMultiStartOptimizer.html#optimize(int, FUNC, org.apache.commons.math3.optimization.GoalType, double[])">optimize(int, FUNC, GoalType, double[])</a></span> - Method in class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/BaseMultivariateMultiStartOptimizer.html" title="class in org.apache.commons.math3.optimization">BaseMultivariateMultiStartOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Optimize an objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/BaseMultivariateOptimizer.html#optimize(int, FUNC, org.apache.commons.math3.optimization.GoalType, double[])">optimize(int, FUNC, GoalType, double[])</a></span> - Method in interface org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/BaseMultivariateOptimizer.html" title="interface in org.apache.commons.math3.optimization">BaseMultivariateOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1. In 4.0, it will be replaced by the declaration
 corresponding to this <a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html#optimize(int, FUNC, org.apache.commons.math3.optimization.GoalType, org.apache.commons.math3.optimization.OptimizationData...)"><code>method</code></a>.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/BaseMultivariateSimpleBoundsOptimizer.html#optimize(int, FUNC, org.apache.commons.math3.optimization.GoalType, double[], double[], double[])">optimize(int, FUNC, GoalType, double[], double[], double[])</a></span> - Method in interface org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/BaseMultivariateSimpleBoundsOptimizer.html" title="interface in org.apache.commons.math3.optimization">BaseMultivariateSimpleBoundsOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Optimize an objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/BaseMultivariateVectorMultiStartOptimizer.html#optimize(int, FUNC, double[], double[], double[])">optimize(int, FUNC, double[], double[], double[])</a></span> - Method in class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/BaseMultivariateVectorMultiStartOptimizer.html" title="class in org.apache.commons.math3.optimization">BaseMultivariateVectorMultiStartOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Optimize an objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/BaseMultivariateVectorOptimizer.html#optimize(int, FUNC, double[], double[], double[])">optimize(int, FUNC, double[], double[], double[])</a></span> - Method in interface org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/BaseMultivariateVectorOptimizer.html" title="interface in org.apache.commons.math3.optimization">BaseMultivariateVectorOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1. In 4.0, this will be replaced by the declaration
 corresponding to this <a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html#optimize(int, FUNC, org.apache.commons.math3.optimization.OptimizationData...)"><code>method</code></a>.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html#optimize(int, FUNC, org.apache.commons.math3.optimization.GoalType, double[])">optimize(int, FUNC, GoalType, double[])</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1. Please use
 <a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html#optimize(int, FUNC, org.apache.commons.math3.optimization.GoalType, org.apache.commons.math3.optimization.OptimizationData...)"><code>BaseAbstractMultivariateOptimizer.optimize(int,MultivariateFunction,GoalType,OptimizationData[])</code></a>
 instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html#optimize(int, FUNC, org.apache.commons.math3.optimization.GoalType, org.apache.commons.math3.optimization.OptimizationData...)">optimize(int, FUNC, GoalType, OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Optimize an objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateSimpleBoundsOptimizer.html#optimize(int, FUNC, org.apache.commons.math3.optimization.GoalType, double[])">optimize(int, FUNC, GoalType, double[])</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateSimpleBoundsOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateSimpleBoundsOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Optimize an objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateSimpleBoundsOptimizer.html#optimize(int, FUNC, org.apache.commons.math3.optimization.GoalType, double[], double[], double[])">optimize(int, FUNC, GoalType, double[], double[], double[])</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateSimpleBoundsOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateSimpleBoundsOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Optimize an objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html#optimize(int, FUNC, double[], double[], double[])">optimize(int, FUNC, double[], double[], double[])</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateVectorOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1. Please use
 <a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html#optimize(int, FUNC, org.apache.commons.math3.optimization.OptimizationData...)"><code>BaseAbstractMultivariateVectorOptimizer.optimize(int,MultivariateVectorFunction,OptimizationData[])</code></a>
 instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html#optimize(int, FUNC, org.apache.commons.math3.optimization.OptimizationData...)">optimize(int, FUNC, OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateVectorOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Optimize an objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#optimize(int, org.apache.commons.math3.analysis.DifferentiableMultivariateVectorFunction, double[], double[], double[])">optimize(int, DifferentiableMultivariateVectorFunction, double[], double[], double[])</a></span> - Method in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1. Please use
 <a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html#optimize(int, FUNC, org.apache.commons.math3.optimization.OptimizationData...)"><code>optimize(int,MultivariateDifferentiableVectorFunction,OptimizationData...)</code></a>
 instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#optimize(int, org.apache.commons.math3.analysis.differentiation.MultivariateDifferentiableVectorFunction, double[], double[], double[])">optimize(int, MultivariateDifferentiableVectorFunction, double[], double[], double[])</a></span> - Method in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1. Please use
 <a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html#optimize(int, FUNC, org.apache.commons.math3.optimization.OptimizationData...)"><code>optimize(int,MultivariateDifferentiableVectorFunction,OptimizationData...)</code></a>
 instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractScalarDifferentiableOptimizer.html#optimize(int, org.apache.commons.math3.analysis.differentiation.MultivariateDifferentiableFunction, org.apache.commons.math3.optimization.GoalType, double[])">optimize(int, MultivariateDifferentiableFunction, GoalType, double[])</a></span> - Method in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractScalarDifferentiableOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractScalarDifferentiableOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Optimize an objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/AbstractLinearOptimizer.html#optimize(org.apache.commons.math3.optimization.linear.LinearObjectiveFunction, java.util.Collection, org.apache.commons.math3.optimization.GoalType, boolean)">optimize(LinearObjectiveFunction, Collection&lt;LinearConstraint&gt;, GoalType, boolean)</a></span> - Method in class org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/AbstractLinearOptimizer.html" title="class in org.apache.commons.math3.optimization.linear">AbstractLinearOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Optimizes an objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/LinearOptimizer.html#optimize(org.apache.commons.math3.optimization.linear.LinearObjectiveFunction, java.util.Collection, org.apache.commons.math3.optimization.GoalType, boolean)">optimize(LinearObjectiveFunction, Collection&lt;LinearConstraint&gt;, GoalType, boolean)</a></span> - Method in interface org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/LinearOptimizer.html" title="interface in org.apache.commons.math3.optimization.linear">LinearOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Optimizes an objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/BaseAbstractUnivariateOptimizer.html#optimize(int, org.apache.commons.math3.analysis.UnivariateFunction, org.apache.commons.math3.optimization.GoalType, double, double, double)">optimize(int, UnivariateFunction, GoalType, double, double, double)</a></span> - Method in class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/BaseAbstractUnivariateOptimizer.html" title="class in org.apache.commons.math3.optimization.univariate">BaseAbstractUnivariateOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Find an optimum in the given interval, start at startValue.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/BaseAbstractUnivariateOptimizer.html#optimize(int, org.apache.commons.math3.analysis.UnivariateFunction, org.apache.commons.math3.optimization.GoalType, double, double)">optimize(int, UnivariateFunction, GoalType, double, double)</a></span> - Method in class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/BaseAbstractUnivariateOptimizer.html" title="class in org.apache.commons.math3.optimization.univariate">BaseAbstractUnivariateOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Find an optimum in the given interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/BaseUnivariateOptimizer.html#optimize(int, FUNC, org.apache.commons.math3.optimization.GoalType, double, double)">optimize(int, FUNC, GoalType, double, double)</a></span> - Method in interface org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/BaseUnivariateOptimizer.html" title="interface in org.apache.commons.math3.optimization.univariate">BaseUnivariateOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Find an optimum in the given interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/BaseUnivariateOptimizer.html#optimize(int, FUNC, org.apache.commons.math3.optimization.GoalType, double, double, double)">optimize(int, FUNC, GoalType, double, double, double)</a></span> - Method in interface org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/BaseUnivariateOptimizer.html" title="interface in org.apache.commons.math3.optimization.univariate">BaseUnivariateOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Find an optimum in the given interval, start at startValue.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/UnivariateMultiStartOptimizer.html#optimize(int, FUNC, org.apache.commons.math3.optimization.GoalType, double, double)">optimize(int, FUNC, GoalType, double, double)</a></span> - Method in class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/UnivariateMultiStartOptimizer.html" title="class in org.apache.commons.math3.optimization.univariate">UnivariateMultiStartOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Find an optimum in the given interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/UnivariateMultiStartOptimizer.html#optimize(int, FUNC, org.apache.commons.math3.optimization.GoalType, double, double, double)">optimize(int, FUNC, GoalType, double, double, double)</a></span> - Method in class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/UnivariateMultiStartOptimizer.html" title="class in org.apache.commons.math3.optimization.univariate">UnivariateMultiStartOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Find an optimum in the given interval, start at startValue.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html#optimizeInternal(int, FUNC, org.apache.commons.math3.optimization.GoalType, double[])">optimizeInternal(int, FUNC, GoalType, double[])</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1. Please use
 <a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html#optimize(int, FUNC, org.apache.commons.math3.optimization.GoalType, org.apache.commons.math3.optimization.OptimizationData...)"><code>BaseAbstractMultivariateOptimizer.optimize(int,MultivariateFunction,GoalType,OptimizationData[])</code></a>
 instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html#optimizeInternal(int, FUNC, org.apache.commons.math3.optimization.GoalType, org.apache.commons.math3.optimization.OptimizationData...)">optimizeInternal(int, FUNC, GoalType, OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Optimize an objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html#optimizeInternal(int, FUNC, double[], double[], double[])">optimizeInternal(int, FUNC, double[], double[], double[])</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateVectorOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1. Please use
 <a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html#optimizeInternal(int, FUNC, org.apache.commons.math3.optimization.OptimizationData...)"><code>BaseAbstractMultivariateVectorOptimizer.optimizeInternal(int,MultivariateVectorFunction,OptimizationData[])</code></a>
 instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html#optimizeInternal(int, FUNC, org.apache.commons.math3.optimization.OptimizationData...)">optimizeInternal(int, FUNC, OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateVectorOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Optimize an objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html#optimizeInternal(int, org.apache.commons.math3.analysis.MultivariateFunction, org.apache.commons.math3.optimization.GoalType, org.apache.commons.math3.optimization.OptimizationData...)">optimizeInternal(int, MultivariateFunction, GoalType, OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/CMAESOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">CMAESOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Optimize an objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/SimplexOptimizer.html#optimizeInternal(int, org.apache.commons.math3.analysis.MultivariateFunction, org.apache.commons.math3.optimization.GoalType, org.apache.commons.math3.optimization.OptimizationData...)">optimizeInternal(int, MultivariateFunction, GoalType, OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/SimplexOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">SimplexOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Optimize an objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractDifferentiableOptimizer.html#optimizeInternal(int, org.apache.commons.math3.analysis.differentiation.MultivariateDifferentiableFunction, org.apache.commons.math3.optimization.GoalType, double[])">optimizeInternal(int, MultivariateDifferentiableFunction, GoalType, double[])</a></span> - Method in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractDifferentiableOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractDifferentiableOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>In 3.1. Please use
 <a href="./org/apache/commons/math3/optimization/general/AbstractDifferentiableOptimizer.html#optimizeInternal(int, org.apache.commons.math3.analysis.differentiation.MultivariateDifferentiableFunction, org.apache.commons.math3.optimization.GoalType, org.apache.commons.math3.optimization.OptimizationData...)"><code>AbstractDifferentiableOptimizer.optimizeInternal(int,MultivariateDifferentiableFunction,GoalType,OptimizationData[])</code></a>
 instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractDifferentiableOptimizer.html#optimizeInternal(int, org.apache.commons.math3.analysis.differentiation.MultivariateDifferentiableFunction, org.apache.commons.math3.optimization.GoalType, org.apache.commons.math3.optimization.OptimizationData...)">optimizeInternal(int, MultivariateDifferentiableFunction, GoalType, OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractDifferentiableOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractDifferentiableOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Optimize an objective function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#optimizeInternal(int, org.apache.commons.math3.analysis.differentiation.MultivariateDifferentiableVectorFunction, org.apache.commons.math3.optimization.OptimizationData...)">optimizeInternal(int, MultivariateDifferentiableVectorFunction, OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1. Override is necessary only until this class's generic
 argument is changed to <code>MultivariateDifferentiableVectorFunction</code>.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractScalarDifferentiableOptimizer.html#optimizeInternal(int, org.apache.commons.math3.analysis.DifferentiableMultivariateFunction, org.apache.commons.math3.optimization.GoalType, double[])">optimizeInternal(int, DifferentiableMultivariateFunction, GoalType, double[])</a></span> - Method in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractScalarDifferentiableOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractScalarDifferentiableOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Optimize an objective function.</div>
</dd>
<dt><a href="./org/apache/commons/math3/genetics/OrderedCrossover.html" title="class in org.apache.commons.math3.genetics"><span class="strong">OrderedCrossover</span></a>&lt;<a href="./org/apache/commons/math3/genetics/OrderedCrossover.html" title="type parameter in OrderedCrossover">T</a>&gt; - Class in <a href="./org/apache/commons/math3/genetics/package-summary.html">org.apache.commons.math3.genetics</a></dt>
<dd>
<div class="block">Order 1 Crossover [OX1] builds offspring from <b>ordered</b> chromosomes by copying a
 consecutive slice from one parent, and filling up the remaining genes from the other
 parent as they appear.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/OrderedCrossover.html#OrderedCrossover()">OrderedCrossover()</a></span> - Constructor for class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/OrderedCrossover.html" title="class in org.apache.commons.math3.genetics">OrderedCrossover</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/geometry/partitioning/utilities/OrderedTuple.html" title="class in org.apache.commons.math3.geometry.partitioning.utilities"><span class="strong">OrderedTuple</span></a> - Class in <a href="./org/apache/commons/math3/geometry/partitioning/utilities/package-summary.html">org.apache.commons.math3.geometry.partitioning.utilities</a></dt>
<dd>
<div class="block">This class implements an ordering operation for T-uples.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/utilities/OrderedTuple.html#OrderedTuple(double...)">OrderedTuple(double...)</a></span> - Constructor for class org.apache.commons.math3.geometry.partitioning.utilities.<a href="./org/apache/commons/math3/geometry/partitioning/utilities/OrderedTuple.html" title="class in org.apache.commons.math3.geometry.partitioning.utilities">OrderedTuple</a></dt>
<dd>
<div class="block">Build an ordered T-uple from its components.</div>
</dd>
<dt><a href="./org/apache/commons/math3/package-summary.html">org.apache.commons.math3</a> - package org.apache.commons.math3</dt>
<dd>
<div class="block">Common classes used throughout the commons-math library.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/package-summary.html">org.apache.commons.math3.analysis</a> - package org.apache.commons.math3.analysis</dt>
<dd>
<div class="block">
      Parent package for common numerical analysis procedures, including root finding,
      function interpolation and integration.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/differentiation/package-summary.html">org.apache.commons.math3.analysis.differentiation</a> - package org.apache.commons.math3.analysis.differentiation</dt>
<dd>
<div class="block">
   This package holds the main interfaces and basic building block classes
   dealing with differentiation.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a> - package org.apache.commons.math3.analysis.function</dt>
<dd>
<div class="block">
      The <code>function</code> package contains function objects that wrap the
      methods contained in <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Math.html?is-external=true" title="class or interface in java.lang"><code>Math</code></a>, as well as common
      mathematical functions such as the gaussian and sinc functions.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/integration/package-summary.html">org.apache.commons.math3.analysis.integration</a> - package org.apache.commons.math3.analysis.integration</dt>
<dd>
<div class="block">Numerical integration (quadrature) algorithms for univariate real functions.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/integration/gauss/package-summary.html">org.apache.commons.math3.analysis.integration.gauss</a> - package org.apache.commons.math3.analysis.integration.gauss</dt>
<dd>
<div class="block">Gauss family of quadrature schemes.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/interpolation/package-summary.html">org.apache.commons.math3.analysis.interpolation</a> - package org.apache.commons.math3.analysis.interpolation</dt>
<dd>
<div class="block">Univariate real functions interpolation algorithms.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/polynomials/package-summary.html">org.apache.commons.math3.analysis.polynomials</a> - package org.apache.commons.math3.analysis.polynomials</dt>
<dd>
<div class="block">Univariate real polynomials implementations, seen as differentiable
     univariate real functions.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/solvers/package-summary.html">org.apache.commons.math3.analysis.solvers</a> - package org.apache.commons.math3.analysis.solvers</dt>
<dd>
<div class="block">Root finding algorithms, for univariate real functions.</div>
</dd>
<dt><a href="./org/apache/commons/math3/complex/package-summary.html">org.apache.commons.math3.complex</a> - package org.apache.commons.math3.complex</dt>
<dd>
<div class="block">Complex number type and implementations of complex transcendental
     functions.</div>
</dd>
<dt><a href="./org/apache/commons/math3/dfp/package-summary.html">org.apache.commons.math3.dfp</a> - package org.apache.commons.math3.dfp</dt>
<dd>
<div class="block">Decimal floating point library for Java</div>
</dd>
<dt><a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a> - package org.apache.commons.math3.distribution</dt>
<dd>
<div class="block">Implementations of common discrete and continuous distributions.</div>
</dd>
<dt><a href="./org/apache/commons/math3/distribution/fitting/package-summary.html">org.apache.commons.math3.distribution.fitting</a> - package org.apache.commons.math3.distribution.fitting</dt>
<dd>
<div class="block">Fitting of parameters against distributions.</div>
</dd>
<dt><a href="./org/apache/commons/math3/exception/package-summary.html">org.apache.commons.math3.exception</a> - package org.apache.commons.math3.exception</dt>
<dd>
<div class="block">Specialized exceptions for algorithms errors.</div>
</dd>
<dt><a href="./org/apache/commons/math3/exception/util/package-summary.html">org.apache.commons.math3.exception.util</a> - package org.apache.commons.math3.exception.util</dt>
<dd>
<div class="block">Classes supporting exception localization.</div>
</dd>
<dt><a href="./org/apache/commons/math3/filter/package-summary.html">org.apache.commons.math3.filter</a> - package org.apache.commons.math3.filter</dt>
<dd>
<div class="block">Implementations of common discrete-time linear filters.</div>
</dd>
<dt><a href="./org/apache/commons/math3/fitting/package-summary.html">org.apache.commons.math3.fitting</a> - package org.apache.commons.math3.fitting</dt>
<dd>
<div class="block">Classes to perform curve fitting.</div>
</dd>
<dt><a href="./org/apache/commons/math3/fitting/leastsquares/package-summary.html">org.apache.commons.math3.fitting.leastsquares</a> - package org.apache.commons.math3.fitting.leastsquares</dt>
<dd>
<div class="block">This package provides algorithms that minimize the residuals
 between observations and model values.</div>
</dd>
<dt><a href="./org/apache/commons/math3/fraction/package-summary.html">org.apache.commons.math3.fraction</a> - package org.apache.commons.math3.fraction</dt>
<dd>
<div class="block">Fraction number type and fraction number formatting.</div>
</dd>
<dt><a href="./org/apache/commons/math3/genetics/package-summary.html">org.apache.commons.math3.genetics</a> - package org.apache.commons.math3.genetics</dt>
<dd>
<div class="block">This package provides Genetic Algorithms components and implementations.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/package-summary.html">org.apache.commons.math3.geometry</a> - package org.apache.commons.math3.geometry</dt>
<dd>
<div class="block">
 This package is the top level package for geometry.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/enclosing/package-summary.html">org.apache.commons.math3.geometry.enclosing</a> - package org.apache.commons.math3.geometry.enclosing</dt>
<dd>
<div class="block">
 This package provides interfaces and classes related to the smallest enclosing ball problem.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/oned/package-summary.html">org.apache.commons.math3.geometry.euclidean.oned</a> - package org.apache.commons.math3.geometry.euclidean.oned</dt>
<dd>
<div class="block">
 This package provides basic 1D geometry components.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/threed/package-summary.html">org.apache.commons.math3.geometry.euclidean.threed</a> - package org.apache.commons.math3.geometry.euclidean.threed</dt>
<dd>
<div class="block">
 This package provides basic 3D geometry components.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/twod/package-summary.html">org.apache.commons.math3.geometry.euclidean.twod</a> - package org.apache.commons.math3.geometry.euclidean.twod</dt>
<dd>
<div class="block">
 This package provides basic 2D geometry components.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/twod/hull/package-summary.html">org.apache.commons.math3.geometry.euclidean.twod.hull</a> - package org.apache.commons.math3.geometry.euclidean.twod.hull</dt>
<dd>
<div class="block">
 This package provides algorithms to generate the convex hull
 for a set of points in an two-dimensional euclidean space.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/hull/package-summary.html">org.apache.commons.math3.geometry.hull</a> - package org.apache.commons.math3.geometry.hull</dt>
<dd>
<div class="block">
 This package provides interfaces and classes related to the convex hull problem.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/partitioning/package-summary.html">org.apache.commons.math3.geometry.partitioning</a> - package org.apache.commons.math3.geometry.partitioning</dt>
<dd>
<div class="block">This package provides classes to implement Binary Space Partition trees.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/partitioning/utilities/package-summary.html">org.apache.commons.math3.geometry.partitioning.utilities</a> - package org.apache.commons.math3.geometry.partitioning.utilities</dt>
<dd>
<div class="block">
 This package provides multidimensional ordering features for partitioning.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/spherical/oned/package-summary.html">org.apache.commons.math3.geometry.spherical.oned</a> - package org.apache.commons.math3.geometry.spherical.oned</dt>
<dd>
<div class="block">
 This package provides basic geometry components on the 1-sphere.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/spherical/twod/package-summary.html">org.apache.commons.math3.geometry.spherical.twod</a> - package org.apache.commons.math3.geometry.spherical.twod</dt>
<dd>
<div class="block">
 This package provides basic geometry components on the 2-sphere.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a> - package org.apache.commons.math3.linear</dt>
<dd>
<div class="block">Linear algebra support.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/package-summary.html">org.apache.commons.math3.ml</a> - package org.apache.commons.math3.ml</dt>
<dd>
<div class="block">Base package for machine learning algorithms.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/clustering/package-summary.html">org.apache.commons.math3.ml.clustering</a> - package org.apache.commons.math3.ml.clustering</dt>
<dd>
<div class="block">Clustering algorithms.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/clustering/evaluation/package-summary.html">org.apache.commons.math3.ml.clustering.evaluation</a> - package org.apache.commons.math3.ml.clustering.evaluation</dt>
<dd>
<div class="block">Cluster evaluation methods.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/distance/package-summary.html">org.apache.commons.math3.ml.distance</a> - package org.apache.commons.math3.ml.distance</dt>
<dd>
<div class="block">Common distance measures.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/neuralnet/package-summary.html">org.apache.commons.math3.ml.neuralnet</a> - package org.apache.commons.math3.ml.neuralnet</dt>
<dd>
<div class="block">Neural networks.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/neuralnet/oned/package-summary.html">org.apache.commons.math3.ml.neuralnet.oned</a> - package org.apache.commons.math3.ml.neuralnet.oned</dt>
<dd>
<div class="block">One-dimensional neural networks.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/neuralnet/sofm/package-summary.html">org.apache.commons.math3.ml.neuralnet.sofm</a> - package org.apache.commons.math3.ml.neuralnet.sofm</dt>
<dd>
<div class="block">Self Organizing Feature Map.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/neuralnet/sofm/util/package-summary.html">org.apache.commons.math3.ml.neuralnet.sofm.util</a> - package org.apache.commons.math3.ml.neuralnet.sofm.util</dt>
<dd>
<div class="block">Miscellaneous utilities.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/neuralnet/twod/package-summary.html">org.apache.commons.math3.ml.neuralnet.twod</a> - package org.apache.commons.math3.ml.neuralnet.twod</dt>
<dd>
<div class="block">Two-dimensional neural networks.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/package-summary.html">org.apache.commons.math3.ode</a> - package org.apache.commons.math3.ode</dt>
<dd>
<div class="block">
 This package provides classes to solve Ordinary Differential Equations problems.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/events/package-summary.html">org.apache.commons.math3.ode.events</a> - package org.apache.commons.math3.ode.events</dt>
<dd>
<div class="block">
 This package provides classes to handle discrete events occurring during
 Ordinary Differential Equations integration.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/nonstiff/package-summary.html">org.apache.commons.math3.ode.nonstiff</a> - package org.apache.commons.math3.ode.nonstiff</dt>
<dd>
<div class="block">
 This package provides classes to solve non-stiff Ordinary Differential Equations problems.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/sampling/package-summary.html">org.apache.commons.math3.ode.sampling</a> - package org.apache.commons.math3.ode.sampling</dt>
<dd>
<div class="block">
 This package provides classes to handle sampling steps during
 Ordinary Differential Equations integration.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/package-summary.html">org.apache.commons.math3.optim</a> - package org.apache.commons.math3.optim</dt>
<dd>
<div class="block">
  Generally, optimizers are algorithms that will either
  <a href="./org/apache/commons/math3/optim/nonlinear/scalar/GoalType.html#MINIMIZE"><code>minimize</code></a> or
  <a href="./org/apache/commons/math3/optim/nonlinear/scalar/GoalType.html#MAXIMIZE"><code>maximize</code></a>
  a scalar function, called the
  <a href="./org/apache/commons/math3/optim/nonlinear/scalar/ObjectiveFunction.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar"><code><em>objective
  function</em></code></a>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/linear/package-summary.html">org.apache.commons.math3.optim.linear</a> - package org.apache.commons.math3.optim.linear</dt>
<dd>
<div class="block">Optimization algorithms for linear constrained problems.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/scalar/package-summary.html">org.apache.commons.math3.optim.nonlinear.scalar</a> - package org.apache.commons.math3.optim.nonlinear.scalar</dt>
<dd>
<div class="block">Algorithms for optimizing a scalar function.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/package-summary.html">org.apache.commons.math3.optim.nonlinear.scalar.gradient</a> - package org.apache.commons.math3.optim.nonlinear.scalar.gradient</dt>
<dd>
<div class="block">This package provides optimization algorithms that require derivatives.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/package-summary.html">org.apache.commons.math3.optim.nonlinear.scalar.noderiv</a> - package org.apache.commons.math3.optim.nonlinear.scalar.noderiv</dt>
<dd>
<div class="block">This package provides optimization algorithms that do not require derivatives.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/vector/package-summary.html">org.apache.commons.math3.optim.nonlinear.vector</a> - package org.apache.commons.math3.optim.nonlinear.vector</dt>
<dd>
<div class="block">Algorithms for optimizing a vector function.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/package-summary.html">org.apache.commons.math3.optim.nonlinear.vector.jacobian</a> - package org.apache.commons.math3.optim.nonlinear.vector.jacobian</dt>
<dd>
<div class="block">This package provides optimization algorithms that require derivatives.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/univariate/package-summary.html">org.apache.commons.math3.optim.univariate</a> - package org.apache.commons.math3.optim.univariate</dt>
<dd>
<div class="block">One-dimensional optimization algorithms.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/package-summary.html">org.apache.commons.math3.optimization</a> - package org.apache.commons.math3.optimization</dt>
<dd>
<div class="block">All classes and sub-packages of this package are deprecated.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/direct/package-summary.html">org.apache.commons.math3.optimization.direct</a> - package org.apache.commons.math3.optimization.direct</dt>
<dd>
<div class="block">
 This package provides optimization algorithms that don't require derivatives.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/fitting/package-summary.html">org.apache.commons.math3.optimization.fitting</a> - package org.apache.commons.math3.optimization.fitting</dt>
<dd>
<div class="block">This package provides classes to perform curve fitting.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/general/package-summary.html">org.apache.commons.math3.optimization.general</a> - package org.apache.commons.math3.optimization.general</dt>
<dd>
<div class="block">This package provides optimization algorithms that require derivatives.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/linear/package-summary.html">org.apache.commons.math3.optimization.linear</a> - package org.apache.commons.math3.optimization.linear</dt>
<dd>
<div class="block">This package provides optimization algorithms for linear constrained problems.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/univariate/package-summary.html">org.apache.commons.math3.optimization.univariate</a> - package org.apache.commons.math3.optimization.univariate</dt>
<dd>
<div class="block">Univariate real functions minimum finding algorithms.</div>
</dd>
<dt><a href="./org/apache/commons/math3/primes/package-summary.html">org.apache.commons.math3.primes</a> - package org.apache.commons.math3.primes</dt>
<dd>
<div class="block">Methods related to prime numbers like primality test, factor decomposition.</div>
</dd>
<dt><a href="./org/apache/commons/math3/random/package-summary.html">org.apache.commons.math3.random</a> - package org.apache.commons.math3.random</dt>
<dd>
<div class="block">Random number and random data generators.</div>
</dd>
<dt><a href="./org/apache/commons/math3/special/package-summary.html">org.apache.commons.math3.special</a> - package org.apache.commons.math3.special</dt>
<dd>
<div class="block">Implementations of special functions such as Beta and Gamma.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/package-summary.html">org.apache.commons.math3.stat</a> - package org.apache.commons.math3.stat</dt>
<dd>
<div class="block">Data storage, manipulation and summary routines.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/clustering/package-summary.html">org.apache.commons.math3.stat.clustering</a> - package org.apache.commons.math3.stat.clustering</dt>
<dd>
<div class="block">All classes and sub-packages of this package are deprecated.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/correlation/package-summary.html">org.apache.commons.math3.stat.correlation</a> - package org.apache.commons.math3.stat.correlation</dt>
<dd>
<div class="block">Correlations/Covariance computations.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/package-summary.html">org.apache.commons.math3.stat.descriptive</a> - package org.apache.commons.math3.stat.descriptive</dt>
<dd>
<div class="block">Generic univariate summary statistic objects.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/moment/package-summary.html">org.apache.commons.math3.stat.descriptive.moment</a> - package org.apache.commons.math3.stat.descriptive.moment</dt>
<dd>
<div class="block">Summary statistics based on moments.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/rank/package-summary.html">org.apache.commons.math3.stat.descriptive.rank</a> - package org.apache.commons.math3.stat.descriptive.rank</dt>
<dd>
<div class="block">Summary statistics based on ranks.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/summary/package-summary.html">org.apache.commons.math3.stat.descriptive.summary</a> - package org.apache.commons.math3.stat.descriptive.summary</dt>
<dd>
<div class="block">Other summary statistics.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/inference/package-summary.html">org.apache.commons.math3.stat.inference</a> - package org.apache.commons.math3.stat.inference</dt>
<dd>
<div class="block">Classes providing hypothesis testing.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/interval/package-summary.html">org.apache.commons.math3.stat.interval</a> - package org.apache.commons.math3.stat.interval</dt>
<dd>
<div class="block">Classes providing binomial proportion confidence interval construction.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/ranking/package-summary.html">org.apache.commons.math3.stat.ranking</a> - package org.apache.commons.math3.stat.ranking</dt>
<dd>
<div class="block">Classes providing rank transformations.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/regression/package-summary.html">org.apache.commons.math3.stat.regression</a> - package org.apache.commons.math3.stat.regression</dt>
<dd>
<div class="block">Statistical routines involving multivariate data.</div>
</dd>
<dt><a href="./org/apache/commons/math3/transform/package-summary.html">org.apache.commons.math3.transform</a> - package org.apache.commons.math3.transform</dt>
<dd>
<div class="block">Implementations of transform methods, including Fast Fourier transforms.</div>
</dd>
<dt><a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a> - package org.apache.commons.math3.util</dt>
<dd>
<div class="block">Convenience routines and common data structures used throughout the commons-math library.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/oned/OrientedPoint.html" title="class in org.apache.commons.math3.geometry.euclidean.oned"><span class="strong">OrientedPoint</span></a> - Class in <a href="./org/apache/commons/math3/geometry/euclidean/oned/package-summary.html">org.apache.commons.math3.geometry.euclidean.oned</a></dt>
<dd>
<div class="block">This class represents a 1D oriented hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/OrientedPoint.html#OrientedPoint(org.apache.commons.math3.geometry.euclidean.oned.Vector1D, boolean, double)">OrientedPoint(Vector1D, boolean, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/OrientedPoint.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">OrientedPoint</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/OrientedPoint.html#OrientedPoint(org.apache.commons.math3.geometry.euclidean.oned.Vector1D, boolean)">OrientedPoint(Vector1D, boolean)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/OrientedPoint.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">OrientedPoint</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.3, replaced with <a href="./org/apache/commons/math3/geometry/euclidean/oned/OrientedPoint.html#OrientedPoint(org.apache.commons.math3.geometry.euclidean.oned.Vector1D, boolean, double)"><code>OrientedPoint.OrientedPoint(Vector1D, boolean, double)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#orthogonal()">orthogonal()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Get a vector orthogonal to the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#orthogonal()">orthogonal()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Get a vector orthogonal to the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#outerProduct(org.apache.commons.math3.linear.FieldVector)">outerProduct(FieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Compute the outer product.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#outerProduct(org.apache.commons.math3.linear.ArrayFieldVector)">outerProduct(ArrayFieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Compute the outer product.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#outerProduct(org.apache.commons.math3.linear.RealVector)">outerProduct(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Compute the outer product.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVector.html#outerProduct(org.apache.commons.math3.linear.FieldVector)">outerProduct(FieldVector&lt;T&gt;)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVector.html" title="interface in org.apache.commons.math3.linear">FieldVector</a></dt>
<dd>
<div class="block">Compute the outer product.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#outerProduct(org.apache.commons.math3.linear.RealVector)">outerProduct(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Compute the outer product.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#outerProduct(org.apache.commons.math3.linear.SparseFieldVector)">outerProduct(SparseFieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Optimized method to compute outer product when both vectors are sparse.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#outerProduct(org.apache.commons.math3.linear.FieldVector)">outerProduct(FieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Compute the outer product.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/threed/OutlineExtractor.html" title="class in org.apache.commons.math3.geometry.euclidean.threed"><span class="strong">OutlineExtractor</span></a> - Class in <a href="./org/apache/commons/math3/geometry/euclidean/threed/package-summary.html">org.apache.commons.math3.geometry.euclidean.threed</a></dt>
<dd>
<div class="block">Extractor for <a href="./org/apache/commons/math3/geometry/euclidean/twod/PolygonsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.twod"><code>polyhedrons sets</code></a> outlines.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/OutlineExtractor.html#OutlineExtractor(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">OutlineExtractor(Vector3D, Vector3D)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/OutlineExtractor.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">OutlineExtractor</a></dt>
<dd>
<div class="block">Build an extractor for a specific projection plane.</div>
</dd>
<dt><a href="./org/apache/commons/math3/exception/OutOfRangeException.html" title="class in org.apache.commons.math3.exception"><span class="strong">OutOfRangeException</span></a> - Exception in <a href="./org/apache/commons/math3/exception/package-summary.html">org.apache.commons.math3.exception</a></dt>
<dd>
<div class="block">Exception to be thrown when some argument is out of range.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/OutOfRangeException.html#OutOfRangeException(java.lang.Number, java.lang.Number, java.lang.Number)">OutOfRangeException(Number, Number, Number)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/OutOfRangeException.html" title="class in org.apache.commons.math3.exception">OutOfRangeException</a></dt>
<dd>
<div class="block">Construct an exception from the mismatched dimensions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/OutOfRangeException.html#OutOfRangeException(org.apache.commons.math3.exception.util.Localizable, java.lang.Number, java.lang.Number, java.lang.Number)">OutOfRangeException(Localizable, Number, Number, Number)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/OutOfRangeException.html" title="class in org.apache.commons.math3.exception">OutOfRangeException</a></dt>
<dd>
<div class="block">Construct an exception from the mismatched dimensions with a
 specific context information.</div>
</dd>
</dl>
<a name="_P_">
<!--   -->
</a>
<h2 class="title">P</h2>
<dl>
<dt><a href="./org/apache/commons/math3/util/Pair.html" title="class in org.apache.commons.math3.util"><span class="strong">Pair</span></a>&lt;<a href="./org/apache/commons/math3/util/Pair.html" title="type parameter in Pair">K</a>,<a href="./org/apache/commons/math3/util/Pair.html" title="type parameter in Pair">V</a>&gt; - Class in <a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a></dt>
<dd>
<div class="block">Generic pair.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Pair.html#Pair(K, V)">Pair(K, V)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Pair.html" title="class in org.apache.commons.math3.util">Pair</a></dt>
<dd>
<div class="block">Create an entry representing a mapping from the specified key to the
 specified value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Pair.html#Pair(org.apache.commons.math3.util.Pair)">Pair(Pair&lt;? extends K, ? extends V&gt;)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Pair.html" title="class in org.apache.commons.math3.util">Pair</a></dt>
<dd>
<div class="block">Create an entry representing the same mapping as the specified entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#pairedT(double[], double[])">pairedT(double[], double[])</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TTest.html#pairedT(double[], double[])">pairedT(double[], double[])</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TTest.html" title="class in org.apache.commons.math3.stat.inference">TTest</a></dt>
<dd>
<div class="block">Computes a paired, 2-sample t-statistic based on the data in the input
 arrays.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#pairedTTest(double[], double[], double)">pairedTTest(double[], double[], double)</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#pairedTTest(double[], double[])">pairedTTest(double[], double[])</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TTest.html#pairedTTest(double[], double[])">pairedTTest(double[], double[])</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TTest.html" title="class in org.apache.commons.math3.stat.inference">TTest</a></dt>
<dd>
<div class="block">Returns the <i>observed significance level</i>, or
 <i> p-value</i>, associated with a paired, two-sample, two-tailed t-test
 based on the data in the input arrays.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TTest.html#pairedTTest(double[], double[], double)">pairedTTest(double[], double[], double)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TTest.html" title="class in org.apache.commons.math3.stat.inference">TTest</a></dt>
<dd>
<div class="block">Performs a paired t-test evaluating the null hypothesis that the
 mean of the paired differences between <code>sample1</code> and
 <code>sample2</code> is 0 in favor of the two-sided alternative that the
 mean paired difference is not equal to 0, with significance level
 <code>alpha</code>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/Parameterizable.html" title="interface in org.apache.commons.math3.ode"><span class="strong">Parameterizable</span></a> - Interface in <a href="./org/apache/commons/math3/ode/package-summary.html">org.apache.commons.math3.ode</a></dt>
<dd>
<div class="block">This interface enables to process any parameterizable object.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/ParameterizedODE.html" title="interface in org.apache.commons.math3.ode"><span class="strong">ParameterizedODE</span></a> - Interface in <a href="./org/apache/commons/math3/ode/package-summary.html">org.apache.commons.math3.ode</a></dt>
<dd>
<div class="block">Interface to compute by finite difference Jacobian matrix for some parameter
  when computing <a href="./org/apache/commons/math3/ode/JacobianMatrices.html" title="class in org.apache.commons.math3.ode"><code>partial derivatives equations</code></a>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/ParameterJacobianProvider.html" title="interface in org.apache.commons.math3.ode"><span class="strong">ParameterJacobianProvider</span></a> - Interface in <a href="./org/apache/commons/math3/ode/package-summary.html">org.apache.commons.math3.ode</a></dt>
<dd>
<div class="block">Interface to compute exactly Jacobian matrix for some parameter
  when computing <a href="./org/apache/commons/math3/ode/JacobianMatrices.html" title="class in org.apache.commons.math3.ode"><code>partial derivatives equations</code></a>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/ParametricUnivariateFunction.html" title="interface in org.apache.commons.math3.analysis"><span class="strong">ParametricUnivariateFunction</span></a> - Interface in <a href="./org/apache/commons/math3/analysis/package-summary.html">org.apache.commons.math3.analysis</a></dt>
<dd>
<div class="block">An interface representing a real function that depends on one independent
 variable plus some extra parameters.</div>
</dd>
<dt><a href="./org/apache/commons/math3/distribution/ParetoDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">ParetoDistribution</span></a> - Class in <a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a></dt>
<dd>
<div class="block">Implementation of the Pareto distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ParetoDistribution.html#ParetoDistribution()">ParetoDistribution()</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ParetoDistribution.html" title="class in org.apache.commons.math3.distribution">ParetoDistribution</a></dt>
<dd>
<div class="block">Create a Pareto distribution with a scale of <code>1</code> and a shape of <code>1</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ParetoDistribution.html#ParetoDistribution(double, double)">ParetoDistribution(double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ParetoDistribution.html" title="class in org.apache.commons.math3.distribution">ParetoDistribution</a></dt>
<dd>
<div class="block">Create a Pareto distribution using the specified scale and shape.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ParetoDistribution.html#ParetoDistribution(double, double, double)">ParetoDistribution(double, double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ParetoDistribution.html" title="class in org.apache.commons.math3.distribution">ParetoDistribution</a></dt>
<dd>
<div class="block">Create a Pareto distribution using the specified scale, shape and
 inverse cumulative distribution accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ParetoDistribution.html#ParetoDistribution(org.apache.commons.math3.random.RandomGenerator, double, double)">ParetoDistribution(RandomGenerator, double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ParetoDistribution.html" title="class in org.apache.commons.math3.distribution">ParetoDistribution</a></dt>
<dd>
<div class="block">Creates a log-normal distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ParetoDistribution.html#ParetoDistribution(org.apache.commons.math3.random.RandomGenerator, double, double, double)">ParetoDistribution(RandomGenerator, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ParetoDistribution.html" title="class in org.apache.commons.math3.distribution">ParetoDistribution</a></dt>
<dd>
<div class="block">Creates a log-normal distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/ComplexFormat.html#parse(java.lang.String)">parse(String)</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/ComplexFormat.html" title="class in org.apache.commons.math3.complex">ComplexFormat</a></dt>
<dd>
<div class="block">Parses a string to produce a <a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex"><code>Complex</code></a> object.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/ComplexFormat.html#parse(java.lang.String, java.text.ParsePosition)">parse(String, ParsePosition)</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/ComplexFormat.html" title="class in org.apache.commons.math3.complex">ComplexFormat</a></dt>
<dd>
<div class="block">Parses a string to produce a <a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex"><code>Complex</code></a> object.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFractionFormat.html#parse(java.lang.String)">parse(String)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFractionFormat.html" title="class in org.apache.commons.math3.fraction">BigFractionFormat</a></dt>
<dd>
<div class="block">Parses a string to produce a <a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction"><code>BigFraction</code></a> object.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFractionFormat.html#parse(java.lang.String, java.text.ParsePosition)">parse(String, ParsePosition)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFractionFormat.html" title="class in org.apache.commons.math3.fraction">BigFractionFormat</a></dt>
<dd>
<div class="block">Parses a string to produce a <a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction"><code>BigFraction</code></a> object.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/FractionFormat.html#parse(java.lang.String)">parse(String)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/FractionFormat.html" title="class in org.apache.commons.math3.fraction">FractionFormat</a></dt>
<dd>
<div class="block">Parses a string to produce a <a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction"><code>Fraction</code></a> object.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/FractionFormat.html#parse(java.lang.String, java.text.ParsePosition)">parse(String, ParsePosition)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/FractionFormat.html" title="class in org.apache.commons.math3.fraction">FractionFormat</a></dt>
<dd>
<div class="block">Parses a string to produce a <a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction"><code>Fraction</code></a> object.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/ProperBigFractionFormat.html#parse(java.lang.String, java.text.ParsePosition)">parse(String, ParsePosition)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/ProperBigFractionFormat.html" title="class in org.apache.commons.math3.fraction">ProperBigFractionFormat</a></dt>
<dd>
<div class="block">Parses a string to produce a <a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction"><code>BigFraction</code></a> object.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/ProperFractionFormat.html#parse(java.lang.String, java.text.ParsePosition)">parse(String, ParsePosition)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/ProperFractionFormat.html" title="class in org.apache.commons.math3.fraction">ProperFractionFormat</a></dt>
<dd>
<div class="block">Parses a string to produce a <a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction"><code>Fraction</code></a> object.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1DFormat.html#parse(java.lang.String)">parse(String)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1DFormat.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1DFormat</a></dt>
<dd>
<div class="block">Parses a string to produce a <a href="./org/apache/commons/math3/geometry/Vector.html" title="interface in org.apache.commons.math3.geometry"><code>Vector</code></a> object.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1DFormat.html#parse(java.lang.String, java.text.ParsePosition)">parse(String, ParsePosition)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1DFormat.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1DFormat</a></dt>
<dd>
<div class="block">Parses a string to produce a <a href="./org/apache/commons/math3/geometry/Vector.html" title="interface in org.apache.commons.math3.geometry"><code>Vector</code></a> object.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3DFormat.html#parse(java.lang.String)">parse(String)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3DFormat.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3DFormat</a></dt>
<dd>
<div class="block">Parses a string to produce a <a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed"><code>Vector3D</code></a> object.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3DFormat.html#parse(java.lang.String, java.text.ParsePosition)">parse(String, ParsePosition)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3DFormat.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3DFormat</a></dt>
<dd>
<div class="block">Parses a string to produce a <a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed"><code>Vector3D</code></a> object.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2DFormat.html#parse(java.lang.String)">parse(String)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2DFormat.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2DFormat</a></dt>
<dd>
<div class="block">Parses a string to produce a <a href="./org/apache/commons/math3/geometry/Vector.html" title="interface in org.apache.commons.math3.geometry"><code>Vector</code></a> object.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2DFormat.html#parse(java.lang.String, java.text.ParsePosition)">parse(String, ParsePosition)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2DFormat.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2DFormat</a></dt>
<dd>
<div class="block">Parses a string to produce a <a href="./org/apache/commons/math3/geometry/Vector.html" title="interface in org.apache.commons.math3.geometry"><code>Vector</code></a> object.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/VectorFormat.html#parse(java.lang.String)">parse(String)</a></span> - Method in class org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/VectorFormat.html" title="class in org.apache.commons.math3.geometry">VectorFormat</a></dt>
<dd>
<div class="block">Parses a string to produce a <a href="./org/apache/commons/math3/geometry/Vector.html" title="interface in org.apache.commons.math3.geometry"><code>Vector</code></a> object.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/VectorFormat.html#parse(java.lang.String, java.text.ParsePosition)">parse(String, ParsePosition)</a></span> - Method in class org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/VectorFormat.html" title="class in org.apache.commons.math3.geometry">VectorFormat</a></dt>
<dd>
<div class="block">Parses a string to produce a <a href="./org/apache/commons/math3/geometry/Vector.html" title="interface in org.apache.commons.math3.geometry"><code>Vector</code></a> object.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrixFormat.html#parse(java.lang.String)">parse(String)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrixFormat.html" title="class in org.apache.commons.math3.linear">RealMatrixFormat</a></dt>
<dd>
<div class="block">Parse a string to produce a <a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear"><code>RealMatrix</code></a> object.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrixFormat.html#parse(java.lang.String, java.text.ParsePosition)">parse(String, ParsePosition)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrixFormat.html" title="class in org.apache.commons.math3.linear">RealMatrixFormat</a></dt>
<dd>
<div class="block">Parse a string to produce a <a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear"><code>RealMatrix</code></a> object.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVectorFormat.html#parse(java.lang.String)">parse(String)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVectorFormat.html" title="class in org.apache.commons.math3.linear">RealVectorFormat</a></dt>
<dd>
<div class="block">Parse a string to produce a <a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear"><code>RealVector</code></a> object.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVectorFormat.html#parse(java.lang.String, java.text.ParsePosition)">parse(String, ParsePosition)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVectorFormat.html" title="class in org.apache.commons.math3.linear">RealVectorFormat</a></dt>
<dd>
<div class="block">Parse a string to produce a <a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear"><code>RealVector</code></a> object.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/AbstractFormat.html#parseAndIgnoreWhitespace(java.lang.String, java.text.ParsePosition)">parseAndIgnoreWhitespace(String, ParsePosition)</a></span> - Static method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/AbstractFormat.html" title="class in org.apache.commons.math3.fraction">AbstractFormat</a></dt>
<dd>
<div class="block">Parses <code>source</code> until a non-whitespace character is found.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/CompositeFormat.html#parseAndIgnoreWhitespace(java.lang.String, java.text.ParsePosition)">parseAndIgnoreWhitespace(String, ParsePosition)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/CompositeFormat.html" title="class in org.apache.commons.math3.util">CompositeFormat</a></dt>
<dd>
<div class="block">Parses <code>source</code> until a non-whitespace character is found.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/VectorFormat.html#parseCoordinates(int, java.lang.String, java.text.ParsePosition)">parseCoordinates(int, String, ParsePosition)</a></span> - Method in class org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/VectorFormat.html" title="class in org.apache.commons.math3.geometry">VectorFormat</a></dt>
<dd>
<div class="block">Parses a string to produce an array of coordinates.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/CompositeFormat.html#parseFixedstring(java.lang.String, java.lang.String, java.text.ParsePosition)">parseFixedstring(String, String, ParsePosition)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/CompositeFormat.html" title="class in org.apache.commons.math3.util">CompositeFormat</a></dt>
<dd>
<div class="block">Parse <code>source</code> for an expected fixed string.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFractionFormat.html#parseNextBigInteger(java.lang.String, java.text.ParsePosition)">parseNextBigInteger(String, ParsePosition)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFractionFormat.html" title="class in org.apache.commons.math3.fraction">BigFractionFormat</a></dt>
<dd>
<div class="block">Parses a string to produce a <code>BigInteger</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/AbstractFormat.html#parseNextCharacter(java.lang.String, java.text.ParsePosition)">parseNextCharacter(String, ParsePosition)</a></span> - Static method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/AbstractFormat.html" title="class in org.apache.commons.math3.fraction">AbstractFormat</a></dt>
<dd>
<div class="block">Parses <code>source</code> until a non-whitespace character is found.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/CompositeFormat.html#parseNextCharacter(java.lang.String, java.text.ParsePosition)">parseNextCharacter(String, ParsePosition)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/CompositeFormat.html" title="class in org.apache.commons.math3.util">CompositeFormat</a></dt>
<dd>
<div class="block">Parses <code>source</code> until a non-whitespace character is found.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/CompositeFormat.html#parseNumber(java.lang.String, java.text.NumberFormat, java.text.ParsePosition)">parseNumber(String, NumberFormat, ParsePosition)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/CompositeFormat.html" title="class in org.apache.commons.math3.util">CompositeFormat</a></dt>
<dd>
<div class="block">Parses <code>source</code> for a number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/BaseMultivariateOptimizer.html#parseOptimizationData(org.apache.commons.math3.optim.OptimizationData...)">parseOptimizationData(OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/BaseMultivariateOptimizer.html" title="class in org.apache.commons.math3.optim">BaseMultivariateOptimizer</a></dt>
<dd>
<div class="block">Scans the list of (required and optional) optimization data that
 characterize the problem.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/BaseOptimizer.html#parseOptimizationData(org.apache.commons.math3.optim.OptimizationData...)">parseOptimizationData(OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/BaseOptimizer.html" title="class in org.apache.commons.math3.optim">BaseOptimizer</a></dt>
<dd>
<div class="block">Scans the list of (required and optional) optimization data that
 characterize the problem.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/LinearOptimizer.html#parseOptimizationData(org.apache.commons.math3.optim.OptimizationData...)">parseOptimizationData(OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/LinearOptimizer.html" title="class in org.apache.commons.math3.optim.linear">LinearOptimizer</a></dt>
<dd>
<div class="block">Scans the list of (required and optional) optimization data that
 characterize the problem.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/SimplexSolver.html#parseOptimizationData(org.apache.commons.math3.optim.OptimizationData...)">parseOptimizationData(OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/SimplexSolver.html" title="class in org.apache.commons.math3.optim.linear">SimplexSolver</a></dt>
<dd>
<div class="block">Scans the list of (required and optional) optimization data that
 characterize the problem.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.html#parseOptimizationData(org.apache.commons.math3.optim.OptimizationData...)">parseOptimizationData(OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.gradient.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.gradient">NonLinearConjugateGradientOptimizer</a></dt>
<dd>
<div class="block">Scans the list of (required and optional) optimization data that
 characterize the problem.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/GradientMultivariateOptimizer.html#parseOptimizationData(org.apache.commons.math3.optim.OptimizationData...)">parseOptimizationData(OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/GradientMultivariateOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar">GradientMultivariateOptimizer</a></dt>
<dd>
<div class="block">Scans the list of (required and optional) optimization data that
 characterize the problem.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/MultivariateOptimizer.html#parseOptimizationData(org.apache.commons.math3.optim.OptimizationData...)">parseOptimizationData(OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/MultivariateOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar">MultivariateOptimizer</a></dt>
<dd>
<div class="block">Scans the list of (required and optional) optimization data that
 characterize the problem.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/CMAESOptimizer.html#parseOptimizationData(org.apache.commons.math3.optim.OptimizationData...)">parseOptimizationData(OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/CMAESOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">CMAESOptimizer</a></dt>
<dd>
<div class="block">Scans the list of (required and optional) optimization data that
 characterize the problem.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/SimplexOptimizer.html#parseOptimizationData(org.apache.commons.math3.optim.OptimizationData...)">parseOptimizationData(OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/SimplexOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">SimplexOptimizer</a></dt>
<dd>
<div class="block">Scans the list of (required and optional) optimization data that
 characterize the problem.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/AbstractLeastSquaresOptimizer.html#parseOptimizationData(org.apache.commons.math3.optim.OptimizationData...)">parseOptimizationData(OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.vector.jacobian.<a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector.jacobian">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Scans the list of (required and optional) optimization data that
 characterize the problem.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/JacobianMultivariateVectorOptimizer.html#parseOptimizationData(org.apache.commons.math3.optim.OptimizationData...)">parseOptimizationData(OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.vector.<a href="./org/apache/commons/math3/optim/nonlinear/vector/JacobianMultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector">JacobianMultivariateVectorOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Scans the list of (required and optional) optimization data that
 characterize the problem.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/MultivariateVectorOptimizer.html#parseOptimizationData(org.apache.commons.math3.optim.OptimizationData...)">parseOptimizationData(OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.vector.<a href="./org/apache/commons/math3/optim/nonlinear/vector/MultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector">MultivariateVectorOptimizer</a></dt>
<dd>
<div class="block">Scans the list of (required and optional) optimization data that
 characterize the problem.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/UnivariateOptimizer.html#parseOptimizationData(org.apache.commons.math3.optim.OptimizationData...)">parseOptimizationData(OptimizationData...)</a></span> - Method in class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/UnivariateOptimizer.html" title="class in org.apache.commons.math3.optim.univariate">UnivariateOptimizer</a></dt>
<dd>
<div class="block">Scans the list of (required and optional) optimization data that
 characterize the problem.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/DifferentiableMultivariateFunction.html#partialDerivative(int)">partialDerivative(int)</a></span> - Method in interface org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/DifferentiableMultivariateFunction.html" title="interface in org.apache.commons.math3.analysis">DifferentiableMultivariateFunction</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Returns the partial derivative of the function with respect to a point coordinate.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/BicubicSplineInterpolatingFunction.html#partialDerivativeX(double, double)">partialDerivativeX(double, double)</a></span> - Method in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/BicubicSplineInterpolatingFunction.html" title="class in org.apache.commons.math3.analysis.interpolation">BicubicSplineInterpolatingFunction</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/BicubicSplineInterpolatingFunction.html#partialDerivativeXX(double, double)">partialDerivativeXX(double, double)</a></span> - Method in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/BicubicSplineInterpolatingFunction.html" title="class in org.apache.commons.math3.analysis.interpolation">BicubicSplineInterpolatingFunction</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/BicubicSplineInterpolatingFunction.html#partialDerivativeXY(double, double)">partialDerivativeXY(double, double)</a></span> - Method in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/BicubicSplineInterpolatingFunction.html" title="class in org.apache.commons.math3.analysis.interpolation">BicubicSplineInterpolatingFunction</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/BicubicSplineInterpolatingFunction.html#partialDerivativeY(double, double)">partialDerivativeY(double, double)</a></span> - Method in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/BicubicSplineInterpolatingFunction.html" title="class in org.apache.commons.math3.analysis.interpolation">BicubicSplineInterpolatingFunction</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/BicubicSplineInterpolatingFunction.html#partialDerivativeYY(double, double)">partialDerivativeYY(double, double)</a></span> - Method in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/BicubicSplineInterpolatingFunction.html" title="class in org.apache.commons.math3.analysis.interpolation">BicubicSplineInterpolatingFunction</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/distribution/PascalDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">PascalDistribution</span></a> - Class in <a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a></dt>
<dd>
<div class="block">
 Implementation of the Pascal distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/PascalDistribution.html#PascalDistribution(int, double)">PascalDistribution(int, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/PascalDistribution.html" title="class in org.apache.commons.math3.distribution">PascalDistribution</a></dt>
<dd>
<div class="block">Create a Pascal distribution with the given number of successes and
 probability of success.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/PascalDistribution.html#PascalDistribution(org.apache.commons.math3.random.RandomGenerator, int, double)">PascalDistribution(RandomGenerator, int, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/PascalDistribution.html" title="class in org.apache.commons.math3.distribution">PascalDistribution</a></dt>
<dd>
<div class="block">Create a Pascal distribution with the given number of successes and
 probability of success.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/correlation/PearsonsCorrelation.html" title="class in org.apache.commons.math3.stat.correlation"><span class="strong">PearsonsCorrelation</span></a> - Class in <a href="./org/apache/commons/math3/stat/correlation/package-summary.html">org.apache.commons.math3.stat.correlation</a></dt>
<dd>
<div class="block">Computes Pearson's product-moment correlation coefficients for pairs of arrays
 or columns of a matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/PearsonsCorrelation.html#PearsonsCorrelation()">PearsonsCorrelation()</a></span> - Constructor for class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/PearsonsCorrelation.html" title="class in org.apache.commons.math3.stat.correlation">PearsonsCorrelation</a></dt>
<dd>
<div class="block">Create a PearsonsCorrelation instance without data.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/PearsonsCorrelation.html#PearsonsCorrelation(double[][])">PearsonsCorrelation(double[][])</a></span> - Constructor for class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/PearsonsCorrelation.html" title="class in org.apache.commons.math3.stat.correlation">PearsonsCorrelation</a></dt>
<dd>
<div class="block">Create a PearsonsCorrelation from a rectangular array
 whose columns represent values of variables to be correlated.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/PearsonsCorrelation.html#PearsonsCorrelation(org.apache.commons.math3.linear.RealMatrix)">PearsonsCorrelation(RealMatrix)</a></span> - Constructor for class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/PearsonsCorrelation.html" title="class in org.apache.commons.math3.stat.correlation">PearsonsCorrelation</a></dt>
<dd>
<div class="block">Create a PearsonsCorrelation from a RealMatrix whose columns
 represent variables to be correlated.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/PearsonsCorrelation.html#PearsonsCorrelation(org.apache.commons.math3.stat.correlation.Covariance)">PearsonsCorrelation(Covariance)</a></span> - Constructor for class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/PearsonsCorrelation.html" title="class in org.apache.commons.math3.stat.correlation">PearsonsCorrelation</a></dt>
<dd>
<div class="block">Create a PearsonsCorrelation from a <a href="./org/apache/commons/math3/stat/correlation/Covariance.html" title="class in org.apache.commons.math3.stat.correlation"><code>Covariance</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/PearsonsCorrelation.html#PearsonsCorrelation(org.apache.commons.math3.linear.RealMatrix, int)">PearsonsCorrelation(RealMatrix, int)</a></span> - Constructor for class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/PearsonsCorrelation.html" title="class in org.apache.commons.math3.stat.correlation">PearsonsCorrelation</a></dt>
<dd>
<div class="block">Create a PearsonsCorrelation from a covariance matrix.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/solvers/PegasusSolver.html" title="class in org.apache.commons.math3.analysis.solvers"><span class="strong">PegasusSolver</span></a> - Class in <a href="./org/apache/commons/math3/analysis/solvers/package-summary.html">org.apache.commons.math3.analysis.solvers</a></dt>
<dd>
<div class="block">Implements the <em>Pegasus</em> method for root-finding (approximating
 a zero of a univariate real function).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/PegasusSolver.html#PegasusSolver()">PegasusSolver()</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/PegasusSolver.html" title="class in org.apache.commons.math3.analysis.solvers">PegasusSolver</a></dt>
<dd>
<div class="block">Construct a solver with default accuracy (1e-6).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/PegasusSolver.html#PegasusSolver(double)">PegasusSolver(double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/PegasusSolver.html" title="class in org.apache.commons.math3.analysis.solvers">PegasusSolver</a></dt>
<dd>
<div class="block">Construct a solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/PegasusSolver.html#PegasusSolver(double, double)">PegasusSolver(double, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/PegasusSolver.html" title="class in org.apache.commons.math3.analysis.solvers">PegasusSolver</a></dt>
<dd>
<div class="block">Construct a solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/PegasusSolver.html#PegasusSolver(double, double, double)">PegasusSolver(double, double, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/PegasusSolver.html" title="class in org.apache.commons.math3.analysis.solvers">PegasusSolver</a></dt>
<dd>
<div class="block">Construct a solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#percentageValue()">percentageValue()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Gets the fraction percentage as a <tt>double</tt>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#percentageValue()">percentageValue()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">
 Gets the fraction percentage as a <tt>double</tt>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/rank/Percentile.html" title="class in org.apache.commons.math3.stat.descriptive.rank"><span class="strong">Percentile</span></a> - Class in <a href="./org/apache/commons/math3/stat/descriptive/rank/package-summary.html">org.apache.commons.math3.stat.descriptive.rank</a></dt>
<dd>
<div class="block">Provides percentile computation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/rank/Percentile.html#Percentile()">Percentile()</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.rank.<a href="./org/apache/commons/math3/stat/descriptive/rank/Percentile.html" title="class in org.apache.commons.math3.stat.descriptive.rank">Percentile</a></dt>
<dd>
<div class="block">Constructs a Percentile with a default quantile
 value of 50.0.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/rank/Percentile.html#Percentile(double)">Percentile(double)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.rank.<a href="./org/apache/commons/math3/stat/descriptive/rank/Percentile.html" title="class in org.apache.commons.math3.stat.descriptive.rank">Percentile</a></dt>
<dd>
<div class="block">Constructs a Percentile with the specific quantile value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/rank/Percentile.html#Percentile(org.apache.commons.math3.stat.descriptive.rank.Percentile)">Percentile(Percentile)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.rank.<a href="./org/apache/commons/math3/stat/descriptive/rank/Percentile.html" title="class in org.apache.commons.math3.stat.descriptive.rank">Percentile</a></dt>
<dd>
<div class="block">Copy constructor, creates a new <code>Percentile</code> identical
 to the <code>original</code></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/StatUtils.html#percentile(double[], double)">percentile(double[], double)</a></span> - Static method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/StatUtils.html" title="class in org.apache.commons.math3.stat">StatUtils</a></dt>
<dd>
<div class="block">Returns an estimate of the <code>p</code>th percentile of the values
 in the <code>values</code> array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/StatUtils.html#percentile(double[], int, int, double)">percentile(double[], int, int, double)</a></span> - Static method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/StatUtils.html" title="class in org.apache.commons.math3.stat">StatUtils</a></dt>
<dd>
<div class="block">Returns an estimate of the <code>p</code>th percentile of the values
 in the <code>values</code> array, starting with the element in (0-based)
 position <code>begin</code> in the array and including <code>length</code>
 values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/QRDecomposition.html#performHouseholderReflection(int, double[][])">performHouseholderReflection(int, double[][])</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/QRDecomposition.html" title="class in org.apache.commons.math3.linear">QRDecomposition</a></dt>
<dd>
<div class="block">Perform Householder reflection for a minor A(minor, minor) of A.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RRQRDecomposition.html#performHouseholderReflection(int, double[][])">performHouseholderReflection(int, double[][])</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RRQRDecomposition.html" title="class in org.apache.commons.math3.linear">RRQRDecomposition</a></dt>
<dd>
<div class="block">Perform Householder reflection for a minor A(minor, minor) of A.</div>
</dd>
<dt><a href="./org/apache/commons/math3/genetics/PermutationChromosome.html" title="interface in org.apache.commons.math3.genetics"><span class="strong">PermutationChromosome</span></a>&lt;<a href="./org/apache/commons/math3/genetics/PermutationChromosome.html" title="type parameter in PermutationChromosome">T</a>&gt; - Interface in <a href="./org/apache/commons/math3/genetics/package-summary.html">org.apache.commons.math3.genetics</a></dt>
<dd>
<div class="block">Interface indicating that the chromosome represents a permutation of objects.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#PI">PI</a></span> - Static variable in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Archimede's constant PI, ratio of circle circumference to diameter.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/linear/PivotSelectionRule.html" title="enum in org.apache.commons.math3.optim.linear"><span class="strong">PivotSelectionRule</span></a> - Enum in <a href="./org/apache/commons/math3/optim/linear/package-summary.html">org.apache.commons.math3.optim.linear</a></dt>
<dd>
<div class="block">Pivot selection rule to the use for a Simplex solver.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed"><span class="strong">Plane</span></a> - Class in <a href="./org/apache/commons/math3/geometry/euclidean/threed/package-summary.html">org.apache.commons.math3.geometry.euclidean.threed</a></dt>
<dd>
<div class="block">The class represent planes in a three dimensional space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#Plane(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, double)">Plane(Vector3D, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block">Build a plane normal to a given direction and containing the origin.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#Plane(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D, double)">Plane(Vector3D, Vector3D, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block">Build a plane from a point and a normal.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#Plane(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D, double)">Plane(Vector3D, Vector3D, Vector3D, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block">Build a plane from three points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#Plane(org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">Plane(Vector3D)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.3, replaced with <a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#Plane(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, double)"><code>Plane.Plane(Vector3D, double)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#Plane(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">Plane(Vector3D, Vector3D)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.3, replaced with <a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#Plane(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D, double)"><code>Plane.Plane(Vector3D, Vector3D, double)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#Plane(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">Plane(Vector3D, Vector3D, Vector3D)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.3, replaced with <a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#Plane(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D, double)"><code>Plane.Plane(Vector3D, Vector3D, Vector3D, double)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#Plane(org.apache.commons.math3.geometry.euclidean.threed.Plane)">Plane(Plane)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block">Copy constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#PLUS_I">PLUS_I</a></span> - Static variable in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">First canonical vector (coordinates: 1, 0, 0).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html#PLUS_I">PLUS_I</a></span> - Static variable in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html" title="class in org.apache.commons.math3.geometry.spherical.twod">S2Point</a></dt>
<dd>
<div class="block">+I (coordinates: \( \theta = 0, \varphi = \pi/2 \)).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#PLUS_J">PLUS_J</a></span> - Static variable in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Second canonical vector (coordinates: 0, 1, 0).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html#PLUS_J">PLUS_J</a></span> - Static variable in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html" title="class in org.apache.commons.math3.geometry.spherical.twod">S2Point</a></dt>
<dd>
<div class="block">+J (coordinates: \( \theta = \pi/2, \varphi = \pi/2 \))).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#PLUS_K">PLUS_K</a></span> - Static variable in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Third canonical vector (coordinates: 0, 0, 1).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html#PLUS_K">PLUS_K</a></span> - Static variable in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html" title="class in org.apache.commons.math3.geometry.spherical.twod">S2Point</a></dt>
<dd>
<div class="block">+K (coordinates: \( \theta = any angle, \varphi = 0 \)).</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/Point.html" title="interface in org.apache.commons.math3.geometry"><span class="strong">Point</span></a>&lt;<a href="./org/apache/commons/math3/geometry/Point.html" title="type parameter in Point">S</a> extends <a href="./org/apache/commons/math3/geometry/Space.html" title="interface in org.apache.commons.math3.geometry">Space</a>&gt; - Interface in <a href="./org/apache/commons/math3/geometry/package-summary.html">org.apache.commons.math3.geometry</a></dt>
<dd>
<div class="block">This interface represents a generic geometrical point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#point">point</a></span> - Variable in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html#pointAt(double)">pointAt(double)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Line</a></dt>
<dd>
<div class="block">Get one point from the line.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/PointValuePair.html" title="class in org.apache.commons.math3.optim"><span class="strong">PointValuePair</span></a> - Class in <a href="./org/apache/commons/math3/optim/package-summary.html">org.apache.commons.math3.optim</a></dt>
<dd>
<div class="block">This class holds a point and the value of an objective function at
 that point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/PointValuePair.html#PointValuePair(double[], double)">PointValuePair(double[], double)</a></span> - Constructor for class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/PointValuePair.html" title="class in org.apache.commons.math3.optim">PointValuePair</a></dt>
<dd>
<div class="block">Builds a point/objective function value pair.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/PointValuePair.html#PointValuePair(double[], double, boolean)">PointValuePair(double[], double, boolean)</a></span> - Constructor for class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/PointValuePair.html" title="class in org.apache.commons.math3.optim">PointValuePair</a></dt>
<dd>
<div class="block">Builds a point/objective function value pair.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/PointValuePair.html" title="class in org.apache.commons.math3.optimization"><span class="strong">PointValuePair</span></a> - Class in <a href="./org/apache/commons/math3/optimization/package-summary.html">org.apache.commons.math3.optimization</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/PointValuePair.html#PointValuePair(double[], double)">PointValuePair(double[], double)</a></span> - Constructor for class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/PointValuePair.html" title="class in org.apache.commons.math3.optimization">PointValuePair</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Builds a point/objective function value pair.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/PointValuePair.html#PointValuePair(double[], double, boolean)">PointValuePair(double[], double, boolean)</a></span> - Constructor for class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/PointValuePair.html" title="class in org.apache.commons.math3.optimization">PointValuePair</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Builds a point/objective function value pair.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/PointVectorValuePair.html" title="class in org.apache.commons.math3.optim"><span class="strong">PointVectorValuePair</span></a> - Class in <a href="./org/apache/commons/math3/optim/package-summary.html">org.apache.commons.math3.optim</a></dt>
<dd>
<div class="block">This class holds a point and the vectorial value of an objective function at
 that point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/PointVectorValuePair.html#PointVectorValuePair(double[], double[])">PointVectorValuePair(double[], double[])</a></span> - Constructor for class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/PointVectorValuePair.html" title="class in org.apache.commons.math3.optim">PointVectorValuePair</a></dt>
<dd>
<div class="block">Builds a point/objective function value pair.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/PointVectorValuePair.html#PointVectorValuePair(double[], double[], boolean)">PointVectorValuePair(double[], double[], boolean)</a></span> - Constructor for class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/PointVectorValuePair.html" title="class in org.apache.commons.math3.optim">PointVectorValuePair</a></dt>
<dd>
<div class="block">Build a point/objective function value pair.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/PointVectorValuePair.html" title="class in org.apache.commons.math3.optimization"><span class="strong">PointVectorValuePair</span></a> - Class in <a href="./org/apache/commons/math3/optimization/package-summary.html">org.apache.commons.math3.optimization</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/PointVectorValuePair.html#PointVectorValuePair(double[], double[])">PointVectorValuePair(double[], double[])</a></span> - Constructor for class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/PointVectorValuePair.html" title="class in org.apache.commons.math3.optimization">PointVectorValuePair</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Builds a point/objective function value pair.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/PointVectorValuePair.html#PointVectorValuePair(double[], double[], boolean)">PointVectorValuePair(double[], double[], boolean)</a></span> - Constructor for class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/PointVectorValuePair.html" title="class in org.apache.commons.math3.optimization">PointVectorValuePair</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a point/objective function value pair.</div>
</dd>
<dt><a href="./org/apache/commons/math3/distribution/PoissonDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">PoissonDistribution</span></a> - Class in <a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a></dt>
<dd>
<div class="block">Implementation of the Poisson distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/PoissonDistribution.html#PoissonDistribution(double)">PoissonDistribution(double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/PoissonDistribution.html" title="class in org.apache.commons.math3.distribution">PoissonDistribution</a></dt>
<dd>
<div class="block">Creates a new Poisson distribution with specified mean.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/PoissonDistribution.html#PoissonDistribution(double, double, int)">PoissonDistribution(double, double, int)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/PoissonDistribution.html" title="class in org.apache.commons.math3.distribution">PoissonDistribution</a></dt>
<dd>
<div class="block">Creates a new Poisson distribution with specified mean, convergence
 criterion and maximum number of iterations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/PoissonDistribution.html#PoissonDistribution(org.apache.commons.math3.random.RandomGenerator, double, double, int)">PoissonDistribution(RandomGenerator, double, double, int)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/PoissonDistribution.html" title="class in org.apache.commons.math3.distribution">PoissonDistribution</a></dt>
<dd>
<div class="block">Creates a new Poisson distribution with specified mean, convergence
 criterion and maximum number of iterations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/PoissonDistribution.html#PoissonDistribution(double, double)">PoissonDistribution(double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/PoissonDistribution.html" title="class in org.apache.commons.math3.distribution">PoissonDistribution</a></dt>
<dd>
<div class="block">Creates a new Poisson distribution with the specified mean and
 convergence criterion.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/PoissonDistribution.html#PoissonDistribution(double, int)">PoissonDistribution(double, int)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/PoissonDistribution.html" title="class in org.apache.commons.math3.distribution">PoissonDistribution</a></dt>
<dd>
<div class="block">Creates a new Poisson distribution with the specified mean and maximum
 number of iterations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/ComplexUtils.html#polar2Complex(double, double)">polar2Complex(double, double)</a></span> - Static method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/ComplexUtils.html" title="class in org.apache.commons.math3.complex">ComplexUtils</a></dt>
<dd>
<div class="block">Creates a complex number from the given polar representation.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/twod/PolygonsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.twod"><span class="strong">PolygonsSet</span></a> - Class in <a href="./org/apache/commons/math3/geometry/euclidean/twod/package-summary.html">org.apache.commons.math3.geometry.euclidean.twod</a></dt>
<dd>
<div class="block">This class represents a 2D region: a set of polygons.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/PolygonsSet.html#PolygonsSet(double)">PolygonsSet(double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/PolygonsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">PolygonsSet</a></dt>
<dd>
<div class="block">Build a polygons set representing the whole plane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/PolygonsSet.html#PolygonsSet(org.apache.commons.math3.geometry.partitioning.BSPTree, double)">PolygonsSet(BSPTree&lt;Euclidean2D&gt;, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/PolygonsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">PolygonsSet</a></dt>
<dd>
<div class="block">Build a polygons set from a BSP tree.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/PolygonsSet.html#PolygonsSet(java.util.Collection, double)">PolygonsSet(Collection&lt;SubHyperplane&lt;Euclidean2D&gt;&gt;, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/PolygonsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">PolygonsSet</a></dt>
<dd>
<div class="block">Build a polygons set from a Boundary REPresentation (B-rep).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/PolygonsSet.html#PolygonsSet(double, double, double, double, double)">PolygonsSet(double, double, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/PolygonsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">PolygonsSet</a></dt>
<dd>
<div class="block">Build a parallellepipedic box.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/PolygonsSet.html#PolygonsSet(double, org.apache.commons.math3.geometry.euclidean.twod.Vector2D...)">PolygonsSet(double, Vector2D...)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/PolygonsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">PolygonsSet</a></dt>
<dd>
<div class="block">Build a polygon from a simple list of vertices.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/PolygonsSet.html#PolygonsSet()">PolygonsSet()</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/PolygonsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">PolygonsSet</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.3, replaced with <a href="./org/apache/commons/math3/geometry/euclidean/twod/PolygonsSet.html#PolygonsSet(double)"><code>PolygonsSet.PolygonsSet(double)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/PolygonsSet.html#PolygonsSet(org.apache.commons.math3.geometry.partitioning.BSPTree)">PolygonsSet(BSPTree&lt;Euclidean2D&gt;)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/PolygonsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">PolygonsSet</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.3, replaced with <a href="./org/apache/commons/math3/geometry/euclidean/twod/PolygonsSet.html#PolygonsSet(org.apache.commons.math3.geometry.partitioning.BSPTree, double)"><code>PolygonsSet.PolygonsSet(BSPTree, double)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/PolygonsSet.html#PolygonsSet(java.util.Collection)">PolygonsSet(Collection&lt;SubHyperplane&lt;Euclidean2D&gt;&gt;)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/PolygonsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">PolygonsSet</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.3, replaced with <a href="./org/apache/commons/math3/geometry/euclidean/twod/PolygonsSet.html#PolygonsSet(java.util.Collection, double)"><code>PolygonsSet.PolygonsSet(Collection, double)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/PolygonsSet.html#PolygonsSet(double, double, double, double)">PolygonsSet(double, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/PolygonsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">PolygonsSet</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.3, replaced with <a href="./org/apache/commons/math3/geometry/euclidean/twod/PolygonsSet.html#PolygonsSet(double, double, double, double, double)"><code>PolygonsSet.PolygonsSet(double, double, double, double, double)</code></a></i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/threed/PolyhedronsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.threed"><span class="strong">PolyhedronsSet</span></a> - Class in <a href="./org/apache/commons/math3/geometry/euclidean/threed/package-summary.html">org.apache.commons.math3.geometry.euclidean.threed</a></dt>
<dd>
<div class="block">This class represents a 3D region: a set of polyhedrons.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/PolyhedronsSet.html#PolyhedronsSet(double)">PolyhedronsSet(double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/PolyhedronsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">PolyhedronsSet</a></dt>
<dd>
<div class="block">Build a polyhedrons set representing the whole real line.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/PolyhedronsSet.html#PolyhedronsSet(org.apache.commons.math3.geometry.partitioning.BSPTree, double)">PolyhedronsSet(BSPTree&lt;Euclidean3D&gt;, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/PolyhedronsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">PolyhedronsSet</a></dt>
<dd>
<div class="block">Build a polyhedrons set from a BSP tree.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/PolyhedronsSet.html#PolyhedronsSet(java.util.Collection, double)">PolyhedronsSet(Collection&lt;SubHyperplane&lt;Euclidean3D&gt;&gt;, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/PolyhedronsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">PolyhedronsSet</a></dt>
<dd>
<div class="block">Build a polyhedrons set from a Boundary REPresentation (B-rep).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/PolyhedronsSet.html#PolyhedronsSet(double, double, double, double, double, double, double)">PolyhedronsSet(double, double, double, double, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/PolyhedronsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">PolyhedronsSet</a></dt>
<dd>
<div class="block">Build a parallellepipedic box.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/PolyhedronsSet.html#PolyhedronsSet()">PolyhedronsSet()</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/PolyhedronsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">PolyhedronsSet</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.3, replaced with <a href="./org/apache/commons/math3/geometry/euclidean/threed/PolyhedronsSet.html#PolyhedronsSet(double)"><code>PolyhedronsSet.PolyhedronsSet(double)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/PolyhedronsSet.html#PolyhedronsSet(org.apache.commons.math3.geometry.partitioning.BSPTree)">PolyhedronsSet(BSPTree&lt;Euclidean3D&gt;)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/PolyhedronsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">PolyhedronsSet</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.3, replaced with <a href="./org/apache/commons/math3/geometry/euclidean/threed/PolyhedronsSet.html#PolyhedronsSet(org.apache.commons.math3.geometry.partitioning.BSPTree, double)"><code>PolyhedronsSet.PolyhedronsSet(BSPTree, double)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/PolyhedronsSet.html#PolyhedronsSet(java.util.Collection)">PolyhedronsSet(Collection&lt;SubHyperplane&lt;Euclidean3D&gt;&gt;)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/PolyhedronsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">PolyhedronsSet</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.3, replaced with <a href="./org/apache/commons/math3/geometry/euclidean/threed/PolyhedronsSet.html#PolyhedronsSet(java.util.Collection, double)"><code>PolyhedronsSet.PolyhedronsSet(Collection, double)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/PolyhedronsSet.html#PolyhedronsSet(double, double, double, double, double, double)">PolyhedronsSet(double, double, double, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/PolyhedronsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">PolyhedronsSet</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.3, replaced with <a href="./org/apache/commons/math3/geometry/euclidean/threed/PolyhedronsSet.html#PolyhedronsSet(double, double, double, double, double, double, double)"><code>PolyhedronsSet.PolyhedronsSet(double, double,
 double, double, double, double, double)</code></a></i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/fitting/PolynomialCurveFitter.html" title="class in org.apache.commons.math3.fitting"><span class="strong">PolynomialCurveFitter</span></a> - Class in <a href="./org/apache/commons/math3/fitting/package-summary.html">org.apache.commons.math3.fitting</a></dt>
<dd>
<div class="block">Fits points to a <a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.Parametric.html" title="class in org.apache.commons.math3.analysis.polynomials"><code>polynomial</code></a>
 function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.html#polynomialDerivative()">polynomialDerivative()</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunction</a></dt>
<dd>
<div class="block">Returns the derivative as a <a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.html" title="class in org.apache.commons.math3.analysis.polynomials"><code>PolynomialFunction</code></a>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/fitting/PolynomialFitter.html" title="class in org.apache.commons.math3.fitting"><span class="strong">PolynomialFitter</span></a> - Class in <a href="./org/apache/commons/math3/fitting/package-summary.html">org.apache.commons.math3.fitting</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.3. Please use <a href="./org/apache/commons/math3/fitting/PolynomialCurveFitter.html" title="class in org.apache.commons.math3.fitting"><code>PolynomialCurveFitter</code></a> and
 <a href="./org/apache/commons/math3/fitting/WeightedObservedPoints.html" title="class in org.apache.commons.math3.fitting"><code>WeightedObservedPoints</code></a> instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/PolynomialFitter.html#PolynomialFitter(org.apache.commons.math3.optim.nonlinear.vector.MultivariateVectorOptimizer)">PolynomialFitter(MultivariateVectorOptimizer)</a></span> - Constructor for class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/PolynomialFitter.html" title="class in org.apache.commons.math3.fitting">PolynomialFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/fitting/PolynomialFitter.html" title="class in org.apache.commons.math3.optimization.fitting"><span class="strong">PolynomialFitter</span></a> - Class in <a href="./org/apache/commons/math3/optimization/fitting/package-summary.html">org.apache.commons.math3.optimization.fitting</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/fitting/PolynomialFitter.html#PolynomialFitter(int, org.apache.commons.math3.optimization.DifferentiableMultivariateVectorOptimizer)">PolynomialFitter(int, DifferentiableMultivariateVectorOptimizer)</a></span> - Constructor for class org.apache.commons.math3.optimization.fitting.<a href="./org/apache/commons/math3/optimization/fitting/PolynomialFitter.html" title="class in org.apache.commons.math3.optimization.fitting">PolynomialFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>Since 3.1 (to be removed in 4.0). Please use
 <a href="./org/apache/commons/math3/optimization/fitting/PolynomialFitter.html#PolynomialFitter(org.apache.commons.math3.optimization.DifferentiableMultivariateVectorOptimizer)"><code>PolynomialFitter.PolynomialFitter(DifferentiableMultivariateVectorOptimizer)</code></a> instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/fitting/PolynomialFitter.html#PolynomialFitter(org.apache.commons.math3.optimization.DifferentiableMultivariateVectorOptimizer)">PolynomialFitter(DifferentiableMultivariateVectorOptimizer)</a></span> - Constructor for class org.apache.commons.math3.optimization.fitting.<a href="./org/apache/commons/math3/optimization/fitting/PolynomialFitter.html" title="class in org.apache.commons.math3.optimization.fitting">PolynomialFitter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.html" title="class in org.apache.commons.math3.analysis.polynomials"><span class="strong">PolynomialFunction</span></a> - Class in <a href="./org/apache/commons/math3/analysis/polynomials/package-summary.html">org.apache.commons.math3.analysis.polynomials</a></dt>
<dd>
<div class="block">Immutable representation of a real polynomial function with real coefficients.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.html#PolynomialFunction(double[])">PolynomialFunction(double[])</a></span> - Constructor for class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunction</a></dt>
<dd>
<div class="block">Construct a polynomial with the given coefficients.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.Parametric.html" title="class in org.apache.commons.math3.analysis.polynomials"><span class="strong">PolynomialFunction.Parametric</span></a> - Class in <a href="./org/apache/commons/math3/analysis/polynomials/package-summary.html">org.apache.commons.math3.analysis.polynomials</a></dt>
<dd>
<div class="block">Dedicated parametric polynomial class.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.Parametric.html#PolynomialFunction.Parametric()">PolynomialFunction.Parametric()</a></span> - Constructor for class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.Parametric.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunction.Parametric</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionLagrangeForm.html" title="class in org.apache.commons.math3.analysis.polynomials"><span class="strong">PolynomialFunctionLagrangeForm</span></a> - Class in <a href="./org/apache/commons/math3/analysis/polynomials/package-summary.html">org.apache.commons.math3.analysis.polynomials</a></dt>
<dd>
<div class="block">Implements the representation of a real polynomial function in
 <a href="http://mathworld.wolfram.com/LagrangeInterpolatingPolynomial.html">
 Lagrange Form</a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionLagrangeForm.html#PolynomialFunctionLagrangeForm(double[], double[])">PolynomialFunctionLagrangeForm(double[], double[])</a></span> - Constructor for class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionLagrangeForm.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunctionLagrangeForm</a></dt>
<dd>
<div class="block">Construct a Lagrange polynomial with the given abscissas and function
 values.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionNewtonForm.html" title="class in org.apache.commons.math3.analysis.polynomials"><span class="strong">PolynomialFunctionNewtonForm</span></a> - Class in <a href="./org/apache/commons/math3/analysis/polynomials/package-summary.html">org.apache.commons.math3.analysis.polynomials</a></dt>
<dd>
<div class="block">Implements the representation of a real polynomial function in
 Newton Form.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionNewtonForm.html#PolynomialFunctionNewtonForm(double[], double[])">PolynomialFunctionNewtonForm(double[], double[])</a></span> - Constructor for class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionNewtonForm.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunctionNewtonForm</a></dt>
<dd>
<div class="block">Construct a Newton polynomial with the given a[] and c[].</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/solvers/PolynomialSolver.html" title="interface in org.apache.commons.math3.analysis.solvers"><span class="strong">PolynomialSolver</span></a> - Interface in <a href="./org/apache/commons/math3/analysis/solvers/package-summary.html">org.apache.commons.math3.analysis.solvers</a></dt>
<dd>
<div class="block">Interface for (polynomial) root-finding algorithms.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialSplineFunction.html#polynomialSplineDerivative()">polynomialSplineDerivative()</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialSplineFunction.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialSplineFunction</a></dt>
<dd>
<div class="block">Get the derivative of the polynomial spline function.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialSplineFunction.html" title="class in org.apache.commons.math3.analysis.polynomials"><span class="strong">PolynomialSplineFunction</span></a> - Class in <a href="./org/apache/commons/math3/analysis/polynomials/package-summary.html">org.apache.commons.math3.analysis.polynomials</a></dt>
<dd>
<div class="block">Represents a polynomial spline function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialSplineFunction.html#PolynomialSplineFunction(double[], org.apache.commons.math3.analysis.polynomials.PolynomialFunction[])">PolynomialSplineFunction(double[], PolynomialFunction[])</a></span> - Constructor for class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialSplineFunction.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialSplineFunction</a></dt>
<dd>
<div class="block">Construct a polynomial spline function with the given segment delimiters
 and interpolating polynomials.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialsUtils.html" title="class in org.apache.commons.math3.analysis.polynomials"><span class="strong">PolynomialsUtils</span></a> - Class in <a href="./org/apache/commons/math3/analysis/polynomials/package-summary.html">org.apache.commons.math3.analysis.polynomials</a></dt>
<dd>
<div class="block">A collection of static methods that operate on or return polynomials.</div>
</dd>
<dt><a href="./org/apache/commons/math3/genetics/Population.html" title="interface in org.apache.commons.math3.genetics"><span class="strong">Population</span></a> - Interface in <a href="./org/apache/commons/math3/genetics/package-summary.html">org.apache.commons.math3.genetics</a></dt>
<dd>
<div class="block">A collection of chromosomes that facilitates generational evolution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/StatUtils.html#populationVariance(double[])">populationVariance(double[])</a></span> - Static method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/StatUtils.html" title="class in org.apache.commons.math3.stat">StatUtils</a></dt>
<dd>
<div class="block">Returns the <a href="http://en.wikibooks.org/wiki/Statistics/Summary/Variance">
 population variance</a> of the entries in the input array, or
 <code>Double.NaN</code> if the array is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/StatUtils.html#populationVariance(double[], int, int)">populationVariance(double[], int, int)</a></span> - Static method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/StatUtils.html" title="class in org.apache.commons.math3.stat">StatUtils</a></dt>
<dd>
<div class="block">Returns the <a href="http://en.wikibooks.org/wiki/Statistics/Summary/Variance">
 population variance</a> of the entries in the specified portion of
 the input array, or <code>Double.NaN</code> if the designated subarray
 is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/StatUtils.html#populationVariance(double[], double, int, int)">populationVariance(double[], double, int, int)</a></span> - Static method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/StatUtils.html" title="class in org.apache.commons.math3.stat">StatUtils</a></dt>
<dd>
<div class="block">Returns the <a href="http://en.wikibooks.org/wiki/Statistics/Summary/Variance">
 population variance</a> of the entries in the specified portion of
 the input array, using the precomputed mean value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/StatUtils.html#populationVariance(double[], double)">populationVariance(double[], double)</a></span> - Static method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/StatUtils.html" title="class in org.apache.commons.math3.stat">StatUtils</a></dt>
<dd>
<div class="block">Returns the <a href="http://en.wikibooks.org/wiki/Statistics/Summary/Variance">
 population variance</a> of the entries in the input array, using the
 precomputed mean value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#POSITIVE_INFINITY">POSITIVE_INFINITY</a></span> - Static variable in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">A vector with all coordinates set to positive infinity.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#POSITIVE_INFINITY">POSITIVE_INFINITY</a></span> - Static variable in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">A vector with all coordinates set to positive infinity.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#POSITIVE_INFINITY">POSITIVE_INFINITY</a></span> - Static variable in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">A vector with all coordinates set to positive infinity.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#POSITIVE_INFINITY">POSITIVE_INFINITY</a></span> - Static variable in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">The constant value of <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Double.html?is-external=true#POSITIVE_INFINITY" title="class or interface in java.lang"><code>Double.POSITIVE_INFINITY</code></a> as a
 <code>Decimal64</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#positiveOrNull()">positiveOrNull()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Check if instance is greater than or equal to 0.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#pow(double, org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">pow(double, DerivativeStructure)</a></span> - Static method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Compute a<sup>x</sup> where a is a double and x a <a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation"><code>DerivativeStructure</code></a></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#pow(double)">pow(double)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Power operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#pow(int)">pow(int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Integer power operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#pow(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">pow(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Power operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#pow(double, double[], int, double[], int)">pow(double, double[], int, double[], int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Compute power of a double to a derivative structure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#pow(double[], int, double, double[], int)">pow(double[], int, double, double[], int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Compute power of a derivative structure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#pow(double[], int, int, double[], int)">pow(double[], int, int, double[], int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Compute integer power of a derivative structure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#pow(double[], int, double[], int, double[], int)">pow(double[], int, double[], int, double[], int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Compute power of a derivative structure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#pow(double)">pow(double)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Power operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#pow(int)">pow(int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Integer power operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#pow(org.apache.commons.math3.analysis.differentiation.SparseGradient)">pow(SparseGradient)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Power operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#pow(double, org.apache.commons.math3.analysis.differentiation.SparseGradient)">pow(double, SparseGradient)</a></span> - Static method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Compute a<sup>x</sup> where a is a double and x a <a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation"><code>SparseGradient</code></a></div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Pow.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Pow</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Power function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Pow.html#Pow()">Pow()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Pow.html" title="class in org.apache.commons.math3.analysis.function">Pow</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#pow(org.apache.commons.math3.complex.Complex)">pow(Complex)</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Returns of value of this complex number raised to the power of <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#pow(double)">pow(double)</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Returns of value of this complex number raised to the power of <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#pow(double)">pow(double)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Power operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#pow(int)">pow(int)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Integer power operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#pow(org.apache.commons.math3.dfp.Dfp)">pow(Dfp)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Power operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpMath.html#pow(org.apache.commons.math3.dfp.Dfp, int)">pow(Dfp, int)</a></span> - Static method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpMath.html" title="class in org.apache.commons.math3.dfp">DfpMath</a></dt>
<dd>
<div class="block">Raises base to the power a by successive squaring.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpMath.html#pow(org.apache.commons.math3.dfp.Dfp, org.apache.commons.math3.dfp.Dfp)">pow(Dfp, Dfp)</a></span> - Static method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpMath.html" title="class in org.apache.commons.math3.dfp">DfpMath</a></dt>
<dd>
<div class="block">Computes x to the y power.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#pow(int)">pow(int)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Returns a <code>BigFraction</code> whose value is
 <code>(this&lt;sup&gt;exponent&lt;/sup&gt;)</code>, returning the result in reduced form.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#pow(long)">pow(long)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Returns a <code>BigFraction</code> whose value is
 <tt>(this<sup>exponent</sup>)</tt>, returning the result in reduced form.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#pow(java.math.BigInteger)">pow(BigInteger)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Returns a <code>BigFraction</code> whose value is
 <tt>(this<sup>exponent</sup>)</tt>, returning the result in reduced form.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#pow(double)">pow(double)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Returns a <code>double</code> whose value is
 <tt>(this<sup>exponent</sup>)</tt>, returning the result in reduced form.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#pow(double)">pow(double)</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Power operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#pow(int)">pow(int)</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Integer power operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#pow(T)">pow(T)</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Power operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ArithmeticUtils.html#pow(int, int)">pow(int, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ArithmeticUtils.html" title="class in org.apache.commons.math3.util">ArithmeticUtils</a></dt>
<dd>
<div class="block">Raise an int to an int power.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ArithmeticUtils.html#pow(int, long)">pow(int, long)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ArithmeticUtils.html" title="class in org.apache.commons.math3.util">ArithmeticUtils</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.3. Please use <a href="./org/apache/commons/math3/util/ArithmeticUtils.html#pow(int, int)"><code>ArithmeticUtils.pow(int,int)</code></a> instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ArithmeticUtils.html#pow(long, int)">pow(long, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ArithmeticUtils.html" title="class in org.apache.commons.math3.util">ArithmeticUtils</a></dt>
<dd>
<div class="block">Raise a long to an int power.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ArithmeticUtils.html#pow(long, long)">pow(long, long)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ArithmeticUtils.html" title="class in org.apache.commons.math3.util">ArithmeticUtils</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.3. Please use <a href="./org/apache/commons/math3/util/ArithmeticUtils.html#pow(long, int)"><code>ArithmeticUtils.pow(long,int)</code></a> instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ArithmeticUtils.html#pow(java.math.BigInteger, int)">pow(BigInteger, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ArithmeticUtils.html" title="class in org.apache.commons.math3.util">ArithmeticUtils</a></dt>
<dd>
<div class="block">Raise a BigInteger to an int power.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ArithmeticUtils.html#pow(java.math.BigInteger, long)">pow(BigInteger, long)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ArithmeticUtils.html" title="class in org.apache.commons.math3.util">ArithmeticUtils</a></dt>
<dd>
<div class="block">Raise a BigInteger to a long power.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ArithmeticUtils.html#pow(java.math.BigInteger, java.math.BigInteger)">pow(BigInteger, BigInteger)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ArithmeticUtils.html" title="class in org.apache.commons.math3.util">ArithmeticUtils</a></dt>
<dd>
<div class="block">Raise a BigInteger to a BigInteger power.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#pow(double)">pow(double)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Power operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#pow(int)">pow(int)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Integer power operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#pow(org.apache.commons.math3.util.Decimal64)">pow(Decimal64)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Power operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#pow(double, double)">pow(double, double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Power function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#pow(double, int)">pow(double, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Raise a double to an int power.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/PowellOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv"><span class="strong">PowellOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/package-summary.html">org.apache.commons.math3.optim.nonlinear.scalar.noderiv</a></dt>
<dd>
<div class="block">Powell's algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/PowellOptimizer.html#PowellOptimizer(double, double, org.apache.commons.math3.optim.ConvergenceChecker)">PowellOptimizer(double, double, ConvergenceChecker&lt;PointValuePair&gt;)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/PowellOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">PowellOptimizer</a></dt>
<dd>
<div class="block">This constructor allows to specify a user-defined convergence checker,
 in addition to the parameters that control the default convergence
 checking procedure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/PowellOptimizer.html#PowellOptimizer(double, double, double, double, org.apache.commons.math3.optim.ConvergenceChecker)">PowellOptimizer(double, double, double, double, ConvergenceChecker&lt;PointValuePair&gt;)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/PowellOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">PowellOptimizer</a></dt>
<dd>
<div class="block">This constructor allows to specify a user-defined convergence checker,
 in addition to the parameters that control the default convergence
 checking procedure and the line search tolerances.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/PowellOptimizer.html#PowellOptimizer(double, double)">PowellOptimizer(double, double)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/PowellOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">PowellOptimizer</a></dt>
<dd>
<div class="block">The parameters control the default convergence checking procedure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/PowellOptimizer.html#PowellOptimizer(double, double, double, double)">PowellOptimizer(double, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/PowellOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">PowellOptimizer</a></dt>
<dd>
<div class="block">Builds an instance with the default convergence checking procedure.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/direct/PowellOptimizer.html" title="class in org.apache.commons.math3.optimization.direct"><span class="strong">PowellOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optimization/direct/package-summary.html">org.apache.commons.math3.optimization.direct</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/PowellOptimizer.html#PowellOptimizer(double, double, org.apache.commons.math3.optimization.ConvergenceChecker)">PowellOptimizer(double, double, ConvergenceChecker&lt;PointValuePair&gt;)</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/PowellOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">PowellOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">This constructor allows to specify a user-defined convergence checker,
 in addition to the parameters that control the default convergence
 checking procedure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/PowellOptimizer.html#PowellOptimizer(double, double, double, double, org.apache.commons.math3.optimization.ConvergenceChecker)">PowellOptimizer(double, double, double, double, ConvergenceChecker&lt;PointValuePair&gt;)</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/PowellOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">PowellOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">This constructor allows to specify a user-defined convergence checker,
 in addition to the parameters that control the default convergence
 checking procedure and the line search tolerances.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/PowellOptimizer.html#PowellOptimizer(double, double)">PowellOptimizer(double, double)</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/PowellOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">PowellOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">The parameters control the default convergence checking procedure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/PowellOptimizer.html#PowellOptimizer(double, double, double, double)">PowellOptimizer(double, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/PowellOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">PowellOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Builds an instance with the default convergence checking procedure.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Power.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Power</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Power function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Power.html#Power(double)">Power(double)</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Power.html" title="class in org.apache.commons.math3.analysis.function">Power</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#power(int)">power(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Returns the result multiplying this with itself <code>p</code> times.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#power(int)">power(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Returns the result of multiplying <code>this</code> with itself <code>p</code>
 times.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#power(int)">power(int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Returns the result multiplying this with itself <code>p</code> times.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#power(int)">power(int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Returns the result of multiplying <code>this</code> with itself <code>p</code>
 times.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#power10(int)">power10(int)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Return the specified  power of 10.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#power10K(int)">power10K(int)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Get the specified  power of 10000.</div>
</dd>
<dt><a href="./org/apache/commons/math3/util/Precision.html" title="class in org.apache.commons.math3.util"><span class="strong">Precision</span></a> - Class in <a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a></dt>
<dd>
<div class="block">Utilities for comparing numbers.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.IdentityPreconditioner.html#precondition(double[], double[])">precondition(double[], double[])</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.gradient.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.IdentityPreconditioner.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.gradient">NonLinearConjugateGradientOptimizer.IdentityPreconditioner</a></dt>
<dd>
<div class="block">Precondition a search direction.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/Preconditioner.html#precondition(double[], double[])">precondition(double[], double[])</a></span> - Method in interface org.apache.commons.math3.optim.nonlinear.scalar.gradient.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/Preconditioner.html" title="interface in org.apache.commons.math3.optim.nonlinear.scalar.gradient">Preconditioner</a></dt>
<dd>
<div class="block">Precondition a search direction.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/NonLinearConjugateGradientOptimizer.IdentityPreconditioner.html#precondition(double[], double[])">precondition(double[], double[])</a></span> - Method in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/NonLinearConjugateGradientOptimizer.IdentityPreconditioner.html" title="class in org.apache.commons.math3.optimization.general">NonLinearConjugateGradientOptimizer.IdentityPreconditioner</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Precondition a search direction.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/Preconditioner.html#precondition(double[], double[])">precondition(double[], double[])</a></span> - Method in interface org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/Preconditioner.html" title="interface in org.apache.commons.math3.optimization.general">Preconditioner</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Precondition a search direction.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/PreconditionedIterativeLinearSolver.html" title="class in org.apache.commons.math3.linear"><span class="strong">PreconditionedIterativeLinearSolver</span></a> - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">
 This abstract class defines preconditioned iterative solvers.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/PreconditionedIterativeLinearSolver.html#PreconditionedIterativeLinearSolver(int)">PreconditionedIterativeLinearSolver(int)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/PreconditionedIterativeLinearSolver.html" title="class in org.apache.commons.math3.linear">PreconditionedIterativeLinearSolver</a></dt>
<dd>
<div class="block">Creates a new instance of this class, with default iteration manager.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/PreconditionedIterativeLinearSolver.html#PreconditionedIterativeLinearSolver(org.apache.commons.math3.util.IterationManager)">PreconditionedIterativeLinearSolver(IterationManager)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/PreconditionedIterativeLinearSolver.html" title="class in org.apache.commons.math3.linear">PreconditionedIterativeLinearSolver</a></dt>
<dd>
<div class="block">Creates a new instance of this class, with custom iteration manager.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/Preconditioner.html" title="interface in org.apache.commons.math3.optim.nonlinear.scalar.gradient"><span class="strong">Preconditioner</span></a> - Interface in <a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/package-summary.html">org.apache.commons.math3.optim.nonlinear.scalar.gradient</a></dt>
<dd>
<div class="block">This interface represents a preconditioner for differentiable scalar
 objective function optimizers.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/general/Preconditioner.html" title="interface in org.apache.commons.math3.optimization.general"><span class="strong">Preconditioner</span></a> - Interface in <a href="./org/apache/commons/math3/optimization/general/package-summary.html">org.apache.commons.math3.optimization.general</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/filter/KalmanFilter.html#predict()">predict()</a></span> - Method in class org.apache.commons.math3.filter.<a href="./org/apache/commons/math3/filter/KalmanFilter.html" title="class in org.apache.commons.math3.filter">KalmanFilter</a></dt>
<dd>
<div class="block">Predict the internal state estimation one time step ahead.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/filter/KalmanFilter.html#predict(double[])">predict(double[])</a></span> - Method in class org.apache.commons.math3.filter.<a href="./org/apache/commons/math3/filter/KalmanFilter.html" title="class in org.apache.commons.math3.filter">KalmanFilter</a></dt>
<dd>
<div class="block">Predict the internal state estimation one time step ahead.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/filter/KalmanFilter.html#predict(org.apache.commons.math3.linear.RealVector)">predict(RealVector)</a></span> - Method in class org.apache.commons.math3.filter.<a href="./org/apache/commons/math3/filter/KalmanFilter.html" title="class in org.apache.commons.math3.filter">KalmanFilter</a></dt>
<dd>
<div class="block">Predict the internal state estimation one time step ahead.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html#predict(double)">predict(double)</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html" title="class in org.apache.commons.math3.stat.regression">SimpleRegression</a></dt>
<dd>
<div class="block">Returns the "predicted" <code>y</code> value associated with the
 supplied <code>x</code> value,  based on the data that has been
 added to the model when this method is activated.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#preMultiply(org.apache.commons.math3.linear.FieldMatrix)">preMultiply(FieldMatrix&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Premultiply this matrix by <code>m</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#preMultiply(T[])">preMultiply(T[])</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Returns the (row) vector result of premultiplying this by the vector
 <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#preMultiply(org.apache.commons.math3.linear.FieldVector)">preMultiply(FieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Returns the (row) vector result of premultiplying this by the vector
 <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#preMultiply(org.apache.commons.math3.linear.RealMatrix)">preMultiply(RealMatrix)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Returns the result of premultiplying <code>this</code> by <code>m</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#preMultiply(double[])">preMultiply(double[])</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Returns the (row) vector result of premultiplying this by the vector <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#preMultiply(org.apache.commons.math3.linear.RealVector)">preMultiply(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Returns the (row) vector result of premultiplying this by the vector <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html#preMultiply(T[])">preMultiply(T[])</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowFieldMatrix</a></dt>
<dd>
<div class="block">Returns the (row) vector result of premultiplying this by the vector
 <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html#preMultiply(double[])">preMultiply(double[])</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowRealMatrix</a></dt>
<dd>
<div class="block">Returns the (row) vector result of premultiplying this by the vector <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#preMultiply(T[])">preMultiply(T[])</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Returns the (row) vector result of premultiplying this by the vector
 <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#preMultiply(double[])">preMultiply(double[])</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Returns the (row) vector result of premultiplying this by the vector <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DiagonalMatrix.html#preMultiply(double[])">preMultiply(double[])</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DiagonalMatrix.html" title="class in org.apache.commons.math3.linear">DiagonalMatrix</a></dt>
<dd>
<div class="block">Returns the (row) vector result of premultiplying this by the vector <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DiagonalMatrix.html#preMultiply(org.apache.commons.math3.linear.RealVector)">preMultiply(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DiagonalMatrix.html" title="class in org.apache.commons.math3.linear">DiagonalMatrix</a></dt>
<dd>
<div class="block">Returns the (row) vector result of premultiplying this by the vector <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#preMultiply(org.apache.commons.math3.linear.FieldMatrix)">preMultiply(FieldMatrix&lt;T&gt;)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Premultiply this matrix by <code>m</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#preMultiply(T[])">preMultiply(T[])</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Returns the (row) vector result of premultiplying this by the vector
 <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#preMultiply(org.apache.commons.math3.linear.FieldVector)">preMultiply(FieldVector&lt;T&gt;)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Returns the (row) vector result of premultiplying this by the vector
 <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#preMultiply(org.apache.commons.math3.linear.RealMatrix)">preMultiply(RealMatrix)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Returns the result of premultiplying <code>this</code> by <code>m</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#preMultiply(double[])">preMultiply(double[])</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Returns the (row) vector result of premultiplying this by the vector <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#preMultiply(org.apache.commons.math3.linear.RealVector)">preMultiply(RealVector)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Returns the (row) vector result of premultiplying this by the vector <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/primes/Primes.html#primeFactors(int)">primeFactors(int)</a></span> - Static method in class org.apache.commons.math3.primes.<a href="./org/apache/commons/math3/primes/Primes.html" title="class in org.apache.commons.math3.primes">Primes</a></dt>
<dd>
<div class="block">Prime factors decomposition</div>
</dd>
<dt><a href="./org/apache/commons/math3/primes/Primes.html" title="class in org.apache.commons.math3.primes"><span class="strong">Primes</span></a> - Class in <a href="./org/apache/commons/math3/primes/package-summary.html">org.apache.commons.math3.primes</a></dt>
<dd>
<div class="block">Methods related to prime numbers in the range of <code>int</code>:
 
 primality test
 prime number generation
 factorization
 </div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/AbstractRealDistribution.html#probability(double, double)">probability(double, double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/AbstractRealDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractRealDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(x0 &lt; X &lt;= x1)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/AbstractRealDistribution.html#probability(double)">probability(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/AbstractRealDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractRealDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X = x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/BinomialDistribution.html#probability(int)">probability(int)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/BinomialDistribution.html" title="class in org.apache.commons.math3.distribution">BinomialDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X = x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html#probability(int)">probability(int)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedIntegerDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X = x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/EnumeratedRealDistribution.html#probability(double)">probability(double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/EnumeratedRealDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedRealDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X = x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/GeometricDistribution.html#probability(int)">probability(int)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/GeometricDistribution.html" title="class in org.apache.commons.math3.distribution">GeometricDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X = x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/HypergeometricDistribution.html#probability(int)">probability(int)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/HypergeometricDistribution.html" title="class in org.apache.commons.math3.distribution">HypergeometricDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X = x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/IntegerDistribution.html#probability(int)">probability(int)</a></span> - Method in interface org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/IntegerDistribution.html" title="interface in org.apache.commons.math3.distribution">IntegerDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X = x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html#probability(double, double)">probability(double, double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html" title="class in org.apache.commons.math3.distribution">LogNormalDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(x0 &lt; X &lt;= x1)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/NormalDistribution.html#probability(double, double)">probability(double, double)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/NormalDistribution.html" title="class in org.apache.commons.math3.distribution">NormalDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(x0 &lt; X &lt;= x1)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/PascalDistribution.html#probability(int)">probability(int)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/PascalDistribution.html" title="class in org.apache.commons.math3.distribution">PascalDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X = x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/PoissonDistribution.html#probability(int)">probability(int)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/PoissonDistribution.html" title="class in org.apache.commons.math3.distribution">PoissonDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X = x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/RealDistribution.html#probability(double)">probability(double)</a></span> - Method in interface org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/RealDistribution.html" title="interface in org.apache.commons.math3.distribution">RealDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X = x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/UniformIntegerDistribution.html#probability(int)">probability(int)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/UniformIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">UniformIntegerDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X = x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ZipfDistribution.html#probability(int)">probability(int)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ZipfDistribution.html" title="class in org.apache.commons.math3.distribution">ZipfDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X = x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#probability(double)">probability(double)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random">EmpiricalDistribution</a></dt>
<dd>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X = x)</code>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/filter/ProcessModel.html" title="interface in org.apache.commons.math3.filter"><span class="strong">ProcessModel</span></a> - Interface in <a href="./org/apache/commons/math3/filter/package-summary.html">org.apache.commons.math3.filter</a></dt>
<dd>
<div class="block">Defines the process dynamics model for the use with a <a href="./org/apache/commons/math3/filter/KalmanFilter.html" title="class in org.apache.commons.math3.filter"><code>KalmanFilter</code></a>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/summary/Product.html" title="class in org.apache.commons.math3.stat.descriptive.summary"><span class="strong">Product</span></a> - Class in <a href="./org/apache/commons/math3/stat/descriptive/summary/package-summary.html">org.apache.commons.math3.stat.descriptive.summary</a></dt>
<dd>
<div class="block">Returns the product of the available values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/Product.html#Product()">Product()</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/Product.html" title="class in org.apache.commons.math3.stat.descriptive.summary">Product</a></dt>
<dd>
<div class="block">Create a Product instance</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/Product.html#Product(org.apache.commons.math3.stat.descriptive.summary.Product)">Product(Product)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/Product.html" title="class in org.apache.commons.math3.stat.descriptive.summary">Product</a></dt>
<dd>
<div class="block">Copy constructor, creates a new <code>Product</code> identical
 to the <code>original</code></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/StatUtils.html#product(double[])">product(double[])</a></span> - Static method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/StatUtils.html" title="class in org.apache.commons.math3.stat">StatUtils</a></dt>
<dd>
<div class="block">Returns the product of the entries in the input array, or
 <code>Double.NaN</code> if the array is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/StatUtils.html#product(double[], int, int)">product(double[], int, int)</a></span> - Static method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/StatUtils.html" title="class in org.apache.commons.math3.stat">StatUtils</a></dt>
<dd>
<div class="block">Returns the product of the entries in the specified portion of
 the input array, or <code>Double.NaN</code> if the designated subarray
 is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/OrientedPoint.html#project(org.apache.commons.math3.geometry.Point)">project(Point&lt;Euclidean1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/OrientedPoint.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">OrientedPoint</a></dt>
<dd>
<div class="block">Project a point to the hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#project(org.apache.commons.math3.geometry.Point)">project(Point&lt;Euclidean3D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block">Project a point to the hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#project(org.apache.commons.math3.geometry.Point)">project(Point&lt;Euclidean2D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Line</a></dt>
<dd>
<div class="block">Project a point to the hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/Hyperplane.html#project(org.apache.commons.math3.geometry.Point)">project(Point&lt;S&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/Hyperplane.html" title="interface in org.apache.commons.math3.geometry.partitioning">Hyperplane</a></dt>
<dd>
<div class="block">Project a point to the hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/LimitAngle.html#project(org.apache.commons.math3.geometry.Point)">project(Point&lt;Sphere1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/LimitAngle.html" title="class in org.apache.commons.math3.geometry.spherical.oned">LimitAngle</a></dt>
<dd>
<div class="block">Project a point to the hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html#project(org.apache.commons.math3.geometry.Point)">project(Point&lt;Sphere2D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html" title="class in org.apache.commons.math3.geometry.spherical.twod">Circle</a></dt>
<dd>
<div class="block">Project a point to the hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#projection(org.apache.commons.math3.linear.FieldVector)">projection(FieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Find the orthogonal projection of this vector onto another vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#projection(org.apache.commons.math3.linear.ArrayFieldVector)">projection(ArrayFieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Find the orthogonal projection of this vector onto another vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVector.html#projection(org.apache.commons.math3.linear.FieldVector)">projection(FieldVector&lt;T&gt;)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVector.html" title="interface in org.apache.commons.math3.linear">FieldVector</a></dt>
<dd>
<div class="block">Find the orthogonal projection of this vector onto another vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#projection(org.apache.commons.math3.linear.RealVector)">projection(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Find the orthogonal projection of this vector onto another vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#projection(org.apache.commons.math3.linear.FieldVector)">projection(FieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Find the orthogonal projection of this vector onto another vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html#projectToBoundary(org.apache.commons.math3.geometry.Point)">projectToBoundary(Point&lt;Euclidean1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/IntervalsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">IntervalsSet</a></dt>
<dd>
<div class="block">Project a point on the boundary of the region.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html#projectToBoundary(org.apache.commons.math3.geometry.Point)">projectToBoundary(Point&lt;S&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractRegion</a></dt>
<dd>
<div class="block">Project a point on the boundary of the region.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/Region.html#projectToBoundary(org.apache.commons.math3.geometry.Point)">projectToBoundary(Point&lt;S&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/Region.html" title="interface in org.apache.commons.math3.geometry.partitioning">Region</a></dt>
<dd>
<div class="block">Project a point on the boundary of the region.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/ArcsSet.html#projectToBoundary(org.apache.commons.math3.geometry.Point)">projectToBoundary(Point&lt;Sphere1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/ArcsSet.html" title="class in org.apache.commons.math3.geometry.spherical.oned">ArcsSet</a></dt>
<dd>
<div class="block">Project a point on the boundary of the region.</div>
</dd>
<dt><a href="./org/apache/commons/math3/fraction/ProperBigFractionFormat.html" title="class in org.apache.commons.math3.fraction"><span class="strong">ProperBigFractionFormat</span></a> - Class in <a href="./org/apache/commons/math3/fraction/package-summary.html">org.apache.commons.math3.fraction</a></dt>
<dd>
<div class="block">Formats a BigFraction number in proper format.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/ProperBigFractionFormat.html#ProperBigFractionFormat()">ProperBigFractionFormat()</a></span> - Constructor for class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/ProperBigFractionFormat.html" title="class in org.apache.commons.math3.fraction">ProperBigFractionFormat</a></dt>
<dd>
<div class="block">Create a proper formatting instance with the default number format for
 the whole, numerator, and denominator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/ProperBigFractionFormat.html#ProperBigFractionFormat(java.text.NumberFormat)">ProperBigFractionFormat(NumberFormat)</a></span> - Constructor for class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/ProperBigFractionFormat.html" title="class in org.apache.commons.math3.fraction">ProperBigFractionFormat</a></dt>
<dd>
<div class="block">Create a proper formatting instance with a custom number format for the
 whole, numerator, and denominator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/ProperBigFractionFormat.html#ProperBigFractionFormat(java.text.NumberFormat, java.text.NumberFormat, java.text.NumberFormat)">ProperBigFractionFormat(NumberFormat, NumberFormat, NumberFormat)</a></span> - Constructor for class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/ProperBigFractionFormat.html" title="class in org.apache.commons.math3.fraction">ProperBigFractionFormat</a></dt>
<dd>
<div class="block">Create a proper formatting instance with a custom number format for each
 of the whole, numerator, and denominator.</div>
</dd>
<dt><a href="./org/apache/commons/math3/fraction/ProperFractionFormat.html" title="class in org.apache.commons.math3.fraction"><span class="strong">ProperFractionFormat</span></a> - Class in <a href="./org/apache/commons/math3/fraction/package-summary.html">org.apache.commons.math3.fraction</a></dt>
<dd>
<div class="block">Formats a Fraction number in proper format.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/ProperFractionFormat.html#ProperFractionFormat()">ProperFractionFormat()</a></span> - Constructor for class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/ProperFractionFormat.html" title="class in org.apache.commons.math3.fraction">ProperFractionFormat</a></dt>
<dd>
<div class="block">Create a proper formatting instance with the default number format for
 the whole, numerator, and denominator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/ProperFractionFormat.html#ProperFractionFormat(java.text.NumberFormat)">ProperFractionFormat(NumberFormat)</a></span> - Constructor for class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/ProperFractionFormat.html" title="class in org.apache.commons.math3.fraction">ProperFractionFormat</a></dt>
<dd>
<div class="block">Create a proper formatting instance with a custom number format for the
 whole, numerator, and denominator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/ProperFractionFormat.html#ProperFractionFormat(java.text.NumberFormat, java.text.NumberFormat, java.text.NumberFormat)">ProperFractionFormat(NumberFormat, NumberFormat, NumberFormat)</a></span> - Constructor for class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/ProperFractionFormat.html" title="class in org.apache.commons.math3.fraction">ProperFractionFormat</a></dt>
<dd>
<div class="block">Create a proper formatting instance with a custom number format for each
 of the whole, numerator, and denominator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DefaultIterativeLinearSolverEvent.html#providesResidual()">providesResidual()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DefaultIterativeLinearSolverEvent.html" title="class in org.apache.commons.math3.linear">DefaultIterativeLinearSolverEvent</a></dt>
<dd>
<div class="block">Returns <code>true</code> if <a href="./org/apache/commons/math3/linear/IterativeLinearSolverEvent.html#getResidual()"><code>IterativeLinearSolverEvent.getResidual()</code></a> is supported.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/IterativeLinearSolverEvent.html#providesResidual()">providesResidual()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/IterativeLinearSolverEvent.html" title="class in org.apache.commons.math3.linear">IterativeLinearSolverEvent</a></dt>
<dd>
<div class="block">Returns <code>true</code> if <a href="./org/apache/commons/math3/linear/IterativeLinearSolverEvent.html#getResidual()"><code>IterativeLinearSolverEvent.getResidual()</code></a> is supported.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html#pruneAroundConvexCell(java.lang.Object, java.lang.Object, java.lang.Object)">pruneAroundConvexCell(Object, Object, Object)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html" title="class in org.apache.commons.math3.geometry.partitioning">BSPTree</a></dt>
<dd>
<div class="block">Prune a tree around a cell.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.html#put(int, double)">put(int, double)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.html" title="class in org.apache.commons.math3.util">OpenIntToDoubleHashMap</a></dt>
<dd>
<div class="block">Put a value associated with a key in the map.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.html#put(int, T)">put(int, T)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.html" title="class in org.apache.commons.math3.util">OpenIntToFieldHashMap</a></dt>
<dd>
<div class="block">Put a value associated with a key in the map.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/TransformerMap.html#putTransformer(java.lang.Class, org.apache.commons.math3.util.NumberTransformer)">putTransformer(Class&lt;?&gt;, NumberTransformer)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/TransformerMap.html" title="class in org.apache.commons.math3.util">TransformerMap</a></dt>
<dd>
<div class="block">Sets a Class to Transformer Mapping in the Map.</div>
</dd>
</dl>
<a name="_Q_">
<!--   -->
</a>
<h2 class="title">Q</h2>
<dl>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#QNAN">QNAN</a></span> - Static variable in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Indicator value for quiet NaN.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/QRDecomposition.html" title="class in org.apache.commons.math3.linear"><span class="strong">QRDecomposition</span></a> - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Calculates the QR-decomposition of a matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/QRDecomposition.html#QRDecomposition(org.apache.commons.math3.linear.RealMatrix)">QRDecomposition(RealMatrix)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/QRDecomposition.html" title="class in org.apache.commons.math3.linear">QRDecomposition</a></dt>
<dd>
<div class="block">Calculates the QR-decomposition of the given matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/QRDecomposition.html#QRDecomposition(org.apache.commons.math3.linear.RealMatrix, double)">QRDecomposition(RealMatrix, double)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/QRDecomposition.html" title="class in org.apache.commons.math3.linear">QRDecomposition</a></dt>
<dd>
<div class="block">Calculates the QR-decomposition of the given matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/sofm/LearningFactorFunctionFactory.html#quasiSigmoidDecay(double, double, long)">quasiSigmoidDecay(double, double, long)</a></span> - Static method in class org.apache.commons.math3.ml.neuralnet.sofm.<a href="./org/apache/commons/math3/ml/neuralnet/sofm/LearningFactorFunctionFactory.html" title="class in org.apache.commons.math3.ml.neuralnet.sofm">LearningFactorFunctionFactory</a></dt>
<dd>
<div class="block">Creates an sigmoid-like <code>LearningFactorFunction function</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/sofm/NeighbourhoodSizeFunctionFactory.html#quasiSigmoidDecay(double, double, long)">quasiSigmoidDecay(double, double, long)</a></span> - Static method in class org.apache.commons.math3.ml.neuralnet.sofm.<a href="./org/apache/commons/math3/ml/neuralnet/sofm/NeighbourhoodSizeFunctionFactory.html" title="class in org.apache.commons.math3.ml.neuralnet.sofm">NeighbourhoodSizeFunctionFactory</a></dt>
<dd>
<div class="block">Creates an sigmoid-like <code>NeighbourhoodSizeFunction function</code>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/neuralnet/sofm/util/QuasiSigmoidDecayFunction.html" title="class in org.apache.commons.math3.ml.neuralnet.sofm.util"><span class="strong">QuasiSigmoidDecayFunction</span></a> - Class in <a href="./org/apache/commons/math3/ml/neuralnet/sofm/util/package-summary.html">org.apache.commons.math3.ml.neuralnet.sofm.util</a></dt>
<dd>
<div class="block">Decay function whose shape is similar to a sigmoid.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/sofm/util/QuasiSigmoidDecayFunction.html#QuasiSigmoidDecayFunction(double, double, long)">QuasiSigmoidDecayFunction(double, double, long)</a></span> - Constructor for class org.apache.commons.math3.ml.neuralnet.sofm.util.<a href="./org/apache/commons/math3/ml/neuralnet/sofm/util/QuasiSigmoidDecayFunction.html" title="class in org.apache.commons.math3.ml.neuralnet.sofm.util">QuasiSigmoidDecayFunction</a></dt>
<dd>
<div class="block">Creates an instance.</div>
</dd>
<dt><a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex"><span class="strong">Quaternion</span></a> - Class in <a href="./org/apache/commons/math3/complex/package-summary.html">org.apache.commons.math3.complex</a></dt>
<dd>
<div class="block">This class implements <a href="http://mathworld.wolfram.com/Quaternion.html">
 quaternions</a> (Hamilton's hypercomplex numbers).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Quaternion.html#Quaternion(double, double, double, double)">Quaternion(double, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex">Quaternion</a></dt>
<dd>
<div class="block">Builds a quaternion from its components.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Quaternion.html#Quaternion(double, double[])">Quaternion(double, double[])</a></span> - Constructor for class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex">Quaternion</a></dt>
<dd>
<div class="block">Builds a quaternion from scalar and vector parts.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Quaternion.html#Quaternion(double[])">Quaternion(double[])</a></span> - Constructor for class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex">Quaternion</a></dt>
<dd>
<div class="block">Builds a pure quaternion from a vector (assuming that the scalar
 part is zero).</div>
</dd>
</dl>
<a name="_R_">
<!--   -->
</a>
<h2 class="title">R</h2>
<dl>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#RADIX">RADIX</a></span> - Static variable in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">The radix, or base of this system.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/AbstractIntegerDistribution.html#random">random</a></span> - Variable in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/AbstractIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractIntegerDistribution</a></dt>
<dd>
<div class="block">RNG instance used to generate samples from the distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/AbstractMultivariateRealDistribution.html#random">random</a></span> - Variable in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/AbstractMultivariateRealDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractMultivariateRealDistribution</a></dt>
<dd>
<div class="block">RNG instance used to generate samples from the distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/AbstractRealDistribution.html#random">random</a></span> - Variable in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/AbstractRealDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractRealDistribution</a></dt>
<dd>
<div class="block">RNG instance used to generate samples from the distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/EnumeratedDistribution.html#random">random</a></span> - Variable in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/EnumeratedDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedDistribution</a></dt>
<dd>
<div class="block">RNG instance used to generate samples from the distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#random()">random()</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Returns a pseudo-random number between 0.0 and 1.0.</div>
</dd>
<dt><a href="./org/apache/commons/math3/random/RandomAdaptor.html" title="class in org.apache.commons.math3.random"><span class="strong">RandomAdaptor</span></a> - Class in <a href="./org/apache/commons/math3/random/package-summary.html">org.apache.commons.math3.random</a></dt>
<dd>
<div class="block">Extension of <code>java.util.Random</code> wrapping a
 <a href="./org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random"><code>RandomGenerator</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomAdaptor.html#RandomAdaptor(org.apache.commons.math3.random.RandomGenerator)">RandomAdaptor(RandomGenerator)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomAdaptor.html" title="class in org.apache.commons.math3.random">RandomAdaptor</a></dt>
<dd>
<div class="block">Construct a RandomAdaptor wrapping the supplied RandomGenerator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/BinaryChromosome.html#randomBinaryRepresentation(int)">randomBinaryRepresentation(int)</a></span> - Static method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/BinaryChromosome.html" title="class in org.apache.commons.math3.genetics">BinaryChromosome</a></dt>
<dd>
<div class="block">Returns a representation of a random binary array of length <code>length</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/AbstractIntegerDistribution.html#randomData">randomData</a></span> - Variable in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/AbstractIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractIntegerDistribution</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1, to be removed in 4.0. Please use the
 <a href="./org/apache/commons/math3/distribution/AbstractIntegerDistribution.html#random"><code>AbstractIntegerDistribution.random</code></a> instance variable instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/AbstractRealDistribution.html#randomData">randomData</a></span> - Variable in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/AbstractRealDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractRealDistribution</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1, to be removed in 4.0. Please use the
 <a href="./org/apache/commons/math3/distribution/AbstractRealDistribution.html#random"><code>AbstractRealDistribution.random</code></a> instance variable instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#randomData">randomData</a></span> - Variable in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random">EmpiricalDistribution</a></dt>
<dd>
<div class="block">RandomDataGenerator instance to use in repeated calls to getNext()</div>
</dd>
<dt><a href="./org/apache/commons/math3/random/RandomData.html" title="interface in org.apache.commons.math3.random"><span class="strong">RandomData</span></a> - Interface in <a href="./org/apache/commons/math3/random/package-summary.html">org.apache.commons.math3.random</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>to be removed in 4.0.  Use <a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random"><code>RandomDataGenerator</code></a> directly</i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random"><span class="strong">RandomDataGenerator</span></a> - Class in <a href="./org/apache/commons/math3/random/package-summary.html">org.apache.commons.math3.random</a></dt>
<dd>
<div class="block">Implements the <a href="./org/apache/commons/math3/random/RandomData.html" title="interface in org.apache.commons.math3.random"><code>RandomData</code></a> interface using a <a href="./org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random"><code>RandomGenerator</code></a>
 instance to generate non-secure data and a <a href="http://docs.oracle.com/javase/6/docs/api/java/security/SecureRandom.html?is-external=true" title="class or interface in java.security"><code>SecureRandom</code></a>
 instance to provide data for the <code>nextSecureXxx</code> methods.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataGenerator.html#RandomDataGenerator()">RandomDataGenerator()</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random">RandomDataGenerator</a></dt>
<dd>
<div class="block">Construct a RandomDataGenerator, using a default random generator as the source
 of randomness.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataGenerator.html#RandomDataGenerator(org.apache.commons.math3.random.RandomGenerator)">RandomDataGenerator(RandomGenerator)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random">RandomDataGenerator</a></dt>
<dd>
<div class="block">Construct a RandomDataGenerator using the supplied <a href="./org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random"><code>RandomGenerator</code></a> as
 the source of (non-secure) random data.</div>
</dd>
<dt><a href="./org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random"><span class="strong">RandomDataImpl</span></a> - Class in <a href="./org/apache/commons/math3/random/package-summary.html">org.apache.commons.math3.random</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>to be removed in 4.0.  Use <a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random"><code>RandomDataGenerator</code></a> instead</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataImpl.html#RandomDataImpl()">RandomDataImpl()</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random">RandomDataImpl</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Construct a RandomDataImpl, using a default random generator as the source
 of randomness.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataImpl.html#RandomDataImpl(org.apache.commons.math3.random.RandomGenerator)">RandomDataImpl(RandomGenerator)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random">RandomDataImpl</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Construct a RandomDataImpl using the supplied <a href="./org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random"><code>RandomGenerator</code></a> as
 the source of (non-secure) random data.</div>
</dd>
<dt><a href="./org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random"><span class="strong">RandomGenerator</span></a> - Interface in <a href="./org/apache/commons/math3/random/package-summary.html">org.apache.commons.math3.random</a></dt>
<dd>
<div class="block">Interface extracted from <code>java.util.Random</code>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/random/RandomGeneratorFactory.html" title="class in org.apache.commons.math3.random"><span class="strong">RandomGeneratorFactory</span></a> - Class in <a href="./org/apache/commons/math3/random/package-summary.html">org.apache.commons.math3.random</a></dt>
<dd>
<div class="block">Utilities for creating <a href="./org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random"><code>RandomGenerator</code></a> instances.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/FeatureInitializerFactory.html#randomize(org.apache.commons.math3.distribution.RealDistribution, org.apache.commons.math3.ml.neuralnet.FeatureInitializer)">randomize(RealDistribution, FeatureInitializer)</a></span> - Static method in class org.apache.commons.math3.ml.neuralnet.<a href="./org/apache/commons/math3/ml/neuralnet/FeatureInitializerFactory.html" title="class in org.apache.commons.math3.ml.neuralnet">FeatureInitializerFactory</a></dt>
<dd>
<div class="block">Adds some amount of random data to the given initializer.</div>
</dd>
<dt><a href="./org/apache/commons/math3/genetics/RandomKey.html" title="class in org.apache.commons.math3.genetics"><span class="strong">RandomKey</span></a>&lt;<a href="./org/apache/commons/math3/genetics/RandomKey.html" title="type parameter in RandomKey">T</a>&gt; - Class in <a href="./org/apache/commons/math3/genetics/package-summary.html">org.apache.commons.math3.genetics</a></dt>
<dd>
<div class="block">Random Key chromosome is used for permutation representation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/RandomKey.html#RandomKey(java.util.List)">RandomKey(List&lt;Double&gt;)</a></span> - Constructor for class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/RandomKey.html" title="class in org.apache.commons.math3.genetics">RandomKey</a></dt>
<dd>
<div class="block">Constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/RandomKey.html#RandomKey(java.lang.Double[])">RandomKey(Double[])</a></span> - Constructor for class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/RandomKey.html" title="class in org.apache.commons.math3.genetics">RandomKey</a></dt>
<dd>
<div class="block">Constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/genetics/RandomKeyMutation.html" title="class in org.apache.commons.math3.genetics"><span class="strong">RandomKeyMutation</span></a> - Class in <a href="./org/apache/commons/math3/genetics/package-summary.html">org.apache.commons.math3.genetics</a></dt>
<dd>
<div class="block">Mutation operator for <a href="./org/apache/commons/math3/genetics/RandomKey.html" title="class in org.apache.commons.math3.genetics"><code>RandomKey</code></a>s.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/RandomKeyMutation.html#RandomKeyMutation()">RandomKeyMutation()</a></span> - Constructor for class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/RandomKeyMutation.html" title="class in org.apache.commons.math3.genetics">RandomKeyMutation</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/RandomKey.html#randomPermutation(int)">randomPermutation(int)</a></span> - Static method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/RandomKey.html" title="class in org.apache.commons.math3.genetics">RandomKey</a></dt>
<dd>
<div class="block">Generates a representation corresponding to a random permutation of
 length l which can be passed to the RandomKey constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/random/RandomVectorGenerator.html" title="interface in org.apache.commons.math3.random"><span class="strong">RandomVectorGenerator</span></a> - Interface in <a href="./org/apache/commons/math3/random/package-summary.html">org.apache.commons.math3.random</a></dt>
<dd>
<div class="block">This interface represents a random generator for whole vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/ranking/NaturalRanking.html#rank(double[])">rank(double[])</a></span> - Method in class org.apache.commons.math3.stat.ranking.<a href="./org/apache/commons/math3/stat/ranking/NaturalRanking.html" title="class in org.apache.commons.math3.stat.ranking">NaturalRanking</a></dt>
<dd>
<div class="block">Rank <code>data</code> using the natural ordering on Doubles, with
 NaN values handled according to <code>nanStrategy</code> and ties
 resolved using <code>tiesStrategy.</code></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/ranking/RankingAlgorithm.html#rank(double[])">rank(double[])</a></span> - Method in interface org.apache.commons.math3.stat.ranking.<a href="./org/apache/commons/math3/stat/ranking/RankingAlgorithm.html" title="interface in org.apache.commons.math3.stat.ranking">RankingAlgorithm</a></dt>
<dd>
<div class="block">Performs a rank transformation on the input data, returning an array
 of ranks.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/ranking/RankingAlgorithm.html" title="interface in org.apache.commons.math3.stat.ranking"><span class="strong">RankingAlgorithm</span></a> - Interface in <a href="./org/apache/commons/math3/stat/ranking/package-summary.html">org.apache.commons.math3.stat.ranking</a></dt>
<dd>
<div class="block">Interface representing a rank transformation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#readBaseExternal(java.io.ObjectInput)">readBaseExternal(ObjectInput)</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">Read the base state of the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#readExternal(java.io.ObjectInput)">readExternal(ObjectInput)</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/NordsieckStepInterpolator.html#readExternal(java.io.ObjectInput)">readExternal(ObjectInput)</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/NordsieckStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">NordsieckStepInterpolator</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#readResolve()">readResolve()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Resolve the transient fields in a deserialized Complex Object.</div>
</dd>
<dt><a href="./org/apache/commons/math3/distribution/RealDistribution.html" title="interface in org.apache.commons.math3.distribution"><span class="strong">RealDistribution</span></a> - Interface in <a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a></dt>
<dd>
<div class="block">Base interface for distributions on the reals.</div>
</dd>
<dt><a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3"><span class="strong">RealFieldElement</span></a>&lt;<a href="./org/apache/commons/math3/RealFieldElement.html" title="type parameter in RealFieldElement">T</a>&gt; - Interface in <a href="./org/apache/commons/math3/package-summary.html">org.apache.commons.math3</a></dt>
<dd>
<div class="block">Interface representing a <a href="http://mathworld.wolfram.com/RealNumber.html">real</a>
 <a href="http://mathworld.wolfram.com/Field.html">field</a>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/RealLinearOperator.html" title="class in org.apache.commons.math3.linear"><span class="strong">RealLinearOperator</span></a> - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">This class defines a linear operator operating on real (<code>double</code>)
 vector spaces.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealLinearOperator.html#RealLinearOperator()">RealLinearOperator()</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealLinearOperator.html" title="class in org.apache.commons.math3.linear">RealLinearOperator</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear"><span class="strong">RealMatrix</span></a> - Interface in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Interface defining a real-valued matrix with basic algebraic operations.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/RealMatrixChangingVisitor.html" title="interface in org.apache.commons.math3.linear"><span class="strong">RealMatrixChangingVisitor</span></a> - Interface in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Interface defining a visitor for matrix entries.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/RealMatrixFormat.html" title="class in org.apache.commons.math3.linear"><span class="strong">RealMatrixFormat</span></a> - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Formats a <code>nxm</code> matrix in components list format
 "{{a<sub>0</sub><sub>0</sub>,a<sub>0</sub><sub>1</sub>, ...,
 a<sub>0</sub><sub>m-1</sub>},{a<sub>1</sub><sub>0</sub>,
 a<sub>1</sub><sub>1</sub>, ..., a<sub>1</sub><sub>m-1</sub>},{...},{
 a<sub>n-1</sub><sub>0</sub>, a<sub>n-1</sub><sub>1</sub>, ...,
 a<sub>n-1</sub><sub>m-1</sub>}}".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrixFormat.html#RealMatrixFormat()">RealMatrixFormat()</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrixFormat.html" title="class in org.apache.commons.math3.linear">RealMatrixFormat</a></dt>
<dd>
<div class="block">Create an instance with default settings.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrixFormat.html#RealMatrixFormat(java.text.NumberFormat)">RealMatrixFormat(NumberFormat)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrixFormat.html" title="class in org.apache.commons.math3.linear">RealMatrixFormat</a></dt>
<dd>
<div class="block">Create an instance with a custom number format for components.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrixFormat.html#RealMatrixFormat(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String)">RealMatrixFormat(String, String, String, String, String, String)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrixFormat.html" title="class in org.apache.commons.math3.linear">RealMatrixFormat</a></dt>
<dd>
<div class="block">Create an instance with custom prefix, suffix and separator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrixFormat.html#RealMatrixFormat(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.text.NumberFormat)">RealMatrixFormat(String, String, String, String, String, String, NumberFormat)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrixFormat.html" title="class in org.apache.commons.math3.linear">RealMatrixFormat</a></dt>
<dd>
<div class="block">Create an instance with custom prefix, suffix, separator and format
 for components.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/RealMatrixPreservingVisitor.html" title="interface in org.apache.commons.math3.linear"><span class="strong">RealMatrixPreservingVisitor</span></a> - Interface in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Interface defining a visitor for matrix entries.</div>
</dd>
<dt><a href="./org/apache/commons/math3/transform/RealTransformer.html" title="interface in org.apache.commons.math3.transform"><span class="strong">RealTransformer</span></a> - Interface in <a href="./org/apache/commons/math3/transform/package-summary.html">org.apache.commons.math3.transform</a></dt>
<dd>
<div class="block">Interface for one-dimensional data sets transformations producing real results.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear"><span class="strong">RealVector</span></a> - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Class defining a real-valued vector with basic algebraic operations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#RealVector()">RealVector()</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/linear/RealVector.Entry.html" title="class in org.apache.commons.math3.linear"><span class="strong">RealVector.Entry</span></a> - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">An entry in the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.Entry.html#RealVector.Entry()">RealVector.Entry()</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.Entry.html" title="class in org.apache.commons.math3.linear">RealVector.Entry</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/RealVector.SparseEntryIterator.html" title="class in org.apache.commons.math3.linear"><span class="strong">RealVector.SparseEntryIterator</span></a> - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">This class should rarely be used, but is here to provide
 a default implementation of sparseIterator(), which is implemented
 by walking over the entries, skipping those that are zero.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.SparseEntryIterator.html#RealVector.SparseEntryIterator()">RealVector.SparseEntryIterator()</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.SparseEntryIterator.html" title="class in org.apache.commons.math3.linear">RealVector.SparseEntryIterator</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/RealVectorChangingVisitor.html" title="interface in org.apache.commons.math3.linear"><span class="strong">RealVectorChangingVisitor</span></a> - Interface in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">This interface defines a visitor for the entries of a vector.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/RealVectorFormat.html" title="class in org.apache.commons.math3.linear"><span class="strong">RealVectorFormat</span></a> - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Formats a vector in components list format "{v0; v1; ...; vk-1}".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVectorFormat.html#RealVectorFormat()">RealVectorFormat()</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVectorFormat.html" title="class in org.apache.commons.math3.linear">RealVectorFormat</a></dt>
<dd>
<div class="block">Create an instance with default settings.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVectorFormat.html#RealVectorFormat(java.text.NumberFormat)">RealVectorFormat(NumberFormat)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVectorFormat.html" title="class in org.apache.commons.math3.linear">RealVectorFormat</a></dt>
<dd>
<div class="block">Create an instance with a custom number format for components.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVectorFormat.html#RealVectorFormat(java.lang.String, java.lang.String, java.lang.String)">RealVectorFormat(String, String, String)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVectorFormat.html" title="class in org.apache.commons.math3.linear">RealVectorFormat</a></dt>
<dd>
<div class="block">Create an instance with custom prefix, suffix and separator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVectorFormat.html#RealVectorFormat(java.lang.String, java.lang.String, java.lang.String, java.text.NumberFormat)">RealVectorFormat(String, String, String, NumberFormat)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVectorFormat.html" title="class in org.apache.commons.math3.linear">RealVectorFormat</a></dt>
<dd>
<div class="block">Create an instance with custom prefix, suffix, separator and format
 for components.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/RealVectorPreservingVisitor.html" title="interface in org.apache.commons.math3.linear"><span class="strong">RealVectorPreservingVisitor</span></a> - Interface in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">This interface defines a visitor for the entries of a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#reciprocal()">reciprocal()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Returns the multiplicative inverse of <code>this</code> element.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#reciprocal()">reciprocal()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Returns the multiplicative inverse of <code>this</code> element.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#reciprocal()">reciprocal()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Returns the multiplicative inverse of <code>this</code> element.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#reciprocal()">reciprocal()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Returns the multiplicative inverse of <code>this</code> element.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/FieldElement.html#reciprocal()">reciprocal()</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/FieldElement.html" title="interface in org.apache.commons.math3">FieldElement</a></dt>
<dd>
<div class="block">Returns the multiplicative inverse of <code>this</code> element.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#reciprocal()">reciprocal()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Return the multiplicative inverse of this fraction.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#reciprocal()">reciprocal()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">Return the multiplicative inverse of this fraction.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#reciprocal()">reciprocal()</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Returns the multiplicative inverse of <code>this</code> element.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#reciprocal()">reciprocal()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dd>
<div class="block">Returns the multiplicative inverse of <code>this</code> element.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#reciprocal()">reciprocal()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Returns the multiplicative inverse of <code>this</code> element.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/RectangularCholeskyDecomposition.html" title="class in org.apache.commons.math3.linear"><span class="strong">RectangularCholeskyDecomposition</span></a> - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Calculates the rectangular Cholesky decomposition of a matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RectangularCholeskyDecomposition.html#RectangularCholeskyDecomposition(org.apache.commons.math3.linear.RealMatrix)">RectangularCholeskyDecomposition(RealMatrix)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RectangularCholeskyDecomposition.html" title="class in org.apache.commons.math3.linear">RectangularCholeskyDecomposition</a></dt>
<dd>
<div class="block">Decompose a symmetric positive semidefinite matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RectangularCholeskyDecomposition.html#RectangularCholeskyDecomposition(org.apache.commons.math3.linear.RealMatrix, double)">RectangularCholeskyDecomposition(RealMatrix, double)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RectangularCholeskyDecomposition.html" title="class in org.apache.commons.math3.linear">RectangularCholeskyDecomposition</a></dt>
<dd>
<div class="block">Decompose a symmetric positive semidefinite matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#reduce()">reduce()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Reduce this <code>BigFraction</code> to its lowest terms.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathUtils.html#reduce(double, double, double)">reduce(double, double, double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathUtils.html" title="class in org.apache.commons.math3.util">MathUtils</a></dt>
<dd>
<div class="block">Reduce <code>|a - offset|</code> to the primary interval
 <code>[0, |period|)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/hull/AklToussaintHeuristic.html#reducePoints(java.util.Collection)">reducePoints(Collection&lt;Vector2D&gt;)</a></span> - Static method in class org.apache.commons.math3.geometry.euclidean.twod.hull.<a href="./org/apache/commons/math3/geometry/euclidean/twod/hull/AklToussaintHeuristic.html" title="class in org.apache.commons.math3.geometry.euclidean.twod.hull">AklToussaintHeuristic</a></dt>
<dd>
<div class="block">Returns a point set that is reduced by all points for which it is safe to assume
 that they are not part of the convex hull.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/partitioning/Region.html" title="interface in org.apache.commons.math3.geometry.partitioning"><span class="strong">Region</span></a>&lt;<a href="./org/apache/commons/math3/geometry/partitioning/Region.html" title="type parameter in Region">S</a> extends <a href="./org/apache/commons/math3/geometry/Space.html" title="interface in org.apache.commons.math3.geometry">Space</a>&gt; - Interface in <a href="./org/apache/commons/math3/geometry/partitioning/package-summary.html">org.apache.commons.math3.geometry.partitioning</a></dt>
<dd>
<div class="block">This interface represents a region of a space as a partition.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/partitioning/Region.Location.html" title="enum in org.apache.commons.math3.geometry.partitioning"><span class="strong">Region.Location</span></a> - Enum in <a href="./org/apache/commons/math3/geometry/partitioning/package-summary.html">org.apache.commons.math3.geometry.partitioning</a></dt>
<dd>
<div class="block">Enumerate for the location of a point with respect to the region.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/partitioning/RegionFactory.html" title="class in org.apache.commons.math3.geometry.partitioning"><span class="strong">RegionFactory</span></a>&lt;<a href="./org/apache/commons/math3/geometry/partitioning/RegionFactory.html" title="type parameter in RegionFactory">S</a> extends <a href="./org/apache/commons/math3/geometry/Space.html" title="interface in org.apache.commons.math3.geometry">Space</a>&gt; - Class in <a href="./org/apache/commons/math3/geometry/partitioning/package-summary.html">org.apache.commons.math3.geometry.partitioning</a></dt>
<dd>
<div class="block">This class is a factory for <a href="./org/apache/commons/math3/geometry/partitioning/Region.html" title="interface in org.apache.commons.math3.geometry.partitioning"><code>Region</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/RegionFactory.html#RegionFactory()">RegionFactory()</a></span> - Constructor for class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/RegionFactory.html" title="class in org.apache.commons.math3.geometry.partitioning">RegionFactory</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/JacobianMatrices.html#registerVariationalEquations(org.apache.commons.math3.ode.ExpandableStatefulODE)">registerVariationalEquations(ExpandableStatefulODE)</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/JacobianMatrices.html" title="class in org.apache.commons.math3.ode">JacobianMatrices</a></dt>
<dd>
<div class="block">Register the variational equations for the Jacobians matrices to the expandable set.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/MillerUpdatingRegression.html#regress()">regress()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/MillerUpdatingRegression.html" title="class in org.apache.commons.math3.stat.regression">MillerUpdatingRegression</a></dt>
<dd>
<div class="block">Conducts a regression on the data in the model, using all regressors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/MillerUpdatingRegression.html#regress(int)">regress(int)</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/MillerUpdatingRegression.html" title="class in org.apache.commons.math3.stat.regression">MillerUpdatingRegression</a></dt>
<dd>
<div class="block">Conducts a regression on the data in the model, using a subset of regressors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/MillerUpdatingRegression.html#regress(int[])">regress(int[])</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/MillerUpdatingRegression.html" title="class in org.apache.commons.math3.stat.regression">MillerUpdatingRegression</a></dt>
<dd>
<div class="block">Conducts a regression on the data in the model, using regressors in array
 Calling this method will change the internal order of the regressors
 and care is required in interpreting the hatmatrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html#regress()">regress()</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html" title="class in org.apache.commons.math3.stat.regression">SimpleRegression</a></dt>
<dd>
<div class="block">Performs a regression on data present in buffers and outputs a RegressionResults object.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html#regress(int[])">regress(int[])</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html" title="class in org.apache.commons.math3.stat.regression">SimpleRegression</a></dt>
<dd>
<div class="block">Performs a regression on data present in buffers including only regressors
 indexed in variablesToInclude and outputs a RegressionResults object</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/UpdatingMultipleLinearRegression.html#regress()">regress()</a></span> - Method in interface org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/UpdatingMultipleLinearRegression.html" title="interface in org.apache.commons.math3.stat.regression">UpdatingMultipleLinearRegression</a></dt>
<dd>
<div class="block">Performs a regression on data present in buffers and outputs a RegressionResults object</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/UpdatingMultipleLinearRegression.html#regress(int[])">regress(int[])</a></span> - Method in interface org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/UpdatingMultipleLinearRegression.html" title="interface in org.apache.commons.math3.stat.regression">UpdatingMultipleLinearRegression</a></dt>
<dd>
<div class="block">Performs a regression on data present in buffers including only regressors
 indexed in variablesToInclude and outputs a RegressionResults object</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/regression/RegressionResults.html" title="class in org.apache.commons.math3.stat.regression"><span class="strong">RegressionResults</span></a> - Class in <a href="./org/apache/commons/math3/stat/regression/package-summary.html">org.apache.commons.math3.stat.regression</a></dt>
<dd>
<div class="block">Results of a Multiple Linear Regression model fit.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/RegressionResults.html#RegressionResults(double[], double[][], boolean, long, int, double, double, double, boolean, boolean)">RegressionResults(double[], double[][], boolean, long, int, double, double, double, boolean, boolean)</a></span> - Constructor for class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/RegressionResults.html" title="class in org.apache.commons.math3.stat.regression">RegressionResults</a></dt>
<dd>
<div class="block">Constructor for Regression Results.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/solvers/RegulaFalsiSolver.html" title="class in org.apache.commons.math3.analysis.solvers"><span class="strong">RegulaFalsiSolver</span></a> - Class in <a href="./org/apache/commons/math3/analysis/solvers/package-summary.html">org.apache.commons.math3.analysis.solvers</a></dt>
<dd>
<div class="block">Implements the <em>Regula Falsi</em> or <em>False position</em> method for
 root-finding (approximating a zero of a univariate real function).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/RegulaFalsiSolver.html#RegulaFalsiSolver()">RegulaFalsiSolver()</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/RegulaFalsiSolver.html" title="class in org.apache.commons.math3.analysis.solvers">RegulaFalsiSolver</a></dt>
<dd>
<div class="block">Construct a solver with default accuracy (1e-6).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/RegulaFalsiSolver.html#RegulaFalsiSolver(double)">RegulaFalsiSolver(double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/RegulaFalsiSolver.html" title="class in org.apache.commons.math3.analysis.solvers">RegulaFalsiSolver</a></dt>
<dd>
<div class="block">Construct a solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/RegulaFalsiSolver.html#RegulaFalsiSolver(double, double)">RegulaFalsiSolver(double, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/RegulaFalsiSolver.html" title="class in org.apache.commons.math3.analysis.solvers">RegulaFalsiSolver</a></dt>
<dd>
<div class="block">Construct a solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/RegulaFalsiSolver.html#RegulaFalsiSolver(double, double, double)">RegulaFalsiSolver(double, double, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/RegulaFalsiSolver.html" title="class in org.apache.commons.math3.analysis.solvers">RegulaFalsiSolver</a></dt>
<dd>
<div class="block">Construct a solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/special/Beta.html#regularizedBeta(double, double, double)">regularizedBeta(double, double, double)</a></span> - Static method in class org.apache.commons.math3.special.<a href="./org/apache/commons/math3/special/Beta.html" title="class in org.apache.commons.math3.special">Beta</a></dt>
<dd>
<div class="block">Returns the
 <a href="http://mathworld.wolfram.com/RegularizedBetaFunction.html">
 regularized beta function</a> I(x, a, b).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/special/Beta.html#regularizedBeta(double, double, double, double)">regularizedBeta(double, double, double, double)</a></span> - Static method in class org.apache.commons.math3.special.<a href="./org/apache/commons/math3/special/Beta.html" title="class in org.apache.commons.math3.special">Beta</a></dt>
<dd>
<div class="block">Returns the
 <a href="http://mathworld.wolfram.com/RegularizedBetaFunction.html">
 regularized beta function</a> I(x, a, b).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/special/Beta.html#regularizedBeta(double, double, double, int)">regularizedBeta(double, double, double, int)</a></span> - Static method in class org.apache.commons.math3.special.<a href="./org/apache/commons/math3/special/Beta.html" title="class in org.apache.commons.math3.special">Beta</a></dt>
<dd>
<div class="block">Returns the regularized beta function I(x, a, b).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/special/Beta.html#regularizedBeta(double, double, double, double, int)">regularizedBeta(double, double, double, double, int)</a></span> - Static method in class org.apache.commons.math3.special.<a href="./org/apache/commons/math3/special/Beta.html" title="class in org.apache.commons.math3.special">Beta</a></dt>
<dd>
<div class="block">Returns the regularized beta function I(x, a, b).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/special/Gamma.html#regularizedGammaP(double, double)">regularizedGammaP(double, double)</a></span> - Static method in class org.apache.commons.math3.special.<a href="./org/apache/commons/math3/special/Gamma.html" title="class in org.apache.commons.math3.special">Gamma</a></dt>
<dd>
<div class="block">Returns the regularized gamma function P(a, x).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/special/Gamma.html#regularizedGammaP(double, double, double, int)">regularizedGammaP(double, double, double, int)</a></span> - Static method in class org.apache.commons.math3.special.<a href="./org/apache/commons/math3/special/Gamma.html" title="class in org.apache.commons.math3.special">Gamma</a></dt>
<dd>
<div class="block">Returns the regularized gamma function P(a, x).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/special/Gamma.html#regularizedGammaQ(double, double)">regularizedGammaQ(double, double)</a></span> - Static method in class org.apache.commons.math3.special.<a href="./org/apache/commons/math3/special/Gamma.html" title="class in org.apache.commons.math3.special">Gamma</a></dt>
<dd>
<div class="block">Returns the regularized gamma function Q(a, x) = 1 - P(a, x).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/special/Gamma.html#regularizedGammaQ(double, double, double, int)">regularizedGammaQ(double, double, double, int)</a></span> - Static method in class org.apache.commons.math3.special.<a href="./org/apache/commons/math3/special/Gamma.html" title="class in org.apache.commons.math3.special">Gamma</a></dt>
<dd>
<div class="block">Returns the regularized gamma function Q(a, x) = 1 - P(a, x).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#reinitialize(double[], boolean, org.apache.commons.math3.ode.EquationsMapper, org.apache.commons.math3.ode.EquationsMapper[])">reinitialize(double[], boolean, EquationsMapper, EquationsMapper[])</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">Reinitialize the instance</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/NordsieckStepInterpolator.html#reinitialize(double[], boolean, org.apache.commons.math3.ode.EquationsMapper, org.apache.commons.math3.ode.EquationsMapper[])">reinitialize(double[], boolean, EquationsMapper, EquationsMapper[])</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/NordsieckStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">NordsieckStepInterpolator</a></dt>
<dd>
<div class="block">Reinitialize the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/NordsieckStepInterpolator.html#reinitialize(double, double, double[], org.apache.commons.math3.linear.Array2DRowRealMatrix)">reinitialize(double, double, double[], Array2DRowRealMatrix)</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/NordsieckStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">NordsieckStepInterpolator</a></dt>
<dd>
<div class="block">Reinitialize the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/events/EventState.html#reinitializeBegin(org.apache.commons.math3.ode.sampling.StepInterpolator)">reinitializeBegin(StepInterpolator)</a></span> - Method in class org.apache.commons.math3.ode.events.<a href="./org/apache/commons/math3/ode/events/EventState.html" title="class in org.apache.commons.math3.ode.events">EventState</a></dt>
<dd>
<div class="block">Reinitialize the beginning of the step.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/linear/Relationship.html" title="enum in org.apache.commons.math3.optim.linear"><span class="strong">Relationship</span></a> - Enum in <a href="./org/apache/commons/math3/optim/linear/package-summary.html">org.apache.commons.math3.optim.linear</a></dt>
<dd>
<div class="block">Types of relationships between two cells in a Solver <a href="./org/apache/commons/math3/optim/linear/LinearConstraint.html" title="class in org.apache.commons.math3.optim.linear"><code>LinearConstraint</code></a>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/linear/Relationship.html" title="enum in org.apache.commons.math3.optimization.linear"><span class="strong">Relationship</span></a> - Enum in <a href="./org/apache/commons/math3/optimization/linear/package-summary.html">org.apache.commons.math3.optimization.linear</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#remainder(double)">remainder(double)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">IEEE remainder operator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#remainder(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">remainder(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">IEEE remainder operator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#remainder(double[], int, double[], int, double[], int)">remainder(double[], int, double[], int, double[], int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Perform remainder of two derivative structures.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#remainder(double)">remainder(double)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">IEEE remainder operator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#remainder(org.apache.commons.math3.analysis.differentiation.SparseGradient)">remainder(SparseGradient)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">IEEE remainder operator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#remainder(org.apache.commons.math3.dfp.Dfp)">remainder(Dfp)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Returns the IEEE remainder.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#remainder(double)">remainder(double)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">IEEE remainder operator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#remainder(double)">remainder(double)</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">IEEE remainder operator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#remainder(T)">remainder(T)</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">IEEE remainder operator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#remainder(double)">remainder(double)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">IEEE remainder operator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#remainder(org.apache.commons.math3.util.Decimal64)">remainder(Decimal64)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">IEEE remainder operator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.OpenMapSparseIterator.html#remove()">remove()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.OpenMapSparseIterator.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector.OpenMapSparseIterator</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.SparseEntryIterator.html#remove()">remove()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.SparseEntryIterator.html" title="class in org.apache.commons.math3.linear">RealVector.SparseEntryIterator</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MultidimensionalCounter.Iterator.html#remove()">remove()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MultidimensionalCounter.Iterator.html" title="class in org.apache.commons.math3.util">MultidimensionalCounter.Iterator</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.html#remove(int)">remove(int)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.html" title="class in org.apache.commons.math3.util">OpenIntToDoubleHashMap</a></dt>
<dd>
<div class="block">Remove the value associated with a key.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.html#remove(int)">remove(int)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.html" title="class in org.apache.commons.math3.util">OpenIntToFieldHashMap</a></dt>
<dd>
<div class="block">Remove the value associated with a key.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.html#REMOVED">REMOVED</a></span> - Static variable in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.html" title="class in org.apache.commons.math3.util">OpenIntToDoubleHashMap</a></dt>
<dd>
<div class="block">Status indicator for removed table entries.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.html#REMOVED">REMOVED</a></span> - Static variable in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.html" title="class in org.apache.commons.math3.util">OpenIntToFieldHashMap</a></dt>
<dd>
<div class="block">Status indicator for removed table entries.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html#removeData(double, double)">removeData(double, double)</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html" title="class in org.apache.commons.math3.stat.regression">SimpleRegression</a></dt>
<dd>
<div class="block">Removes the observation (x,y) from the regression data set.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html#removeData(double[][])">removeData(double[][])</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html" title="class in org.apache.commons.math3.stat.regression">SimpleRegression</a></dt>
<dd>
<div class="block">Removes observations represented by the elements in <code>data</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/IterationManager.html#removeIterationListener(org.apache.commons.math3.util.IterationListener)">removeIterationListener(IterationListener)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/IterationManager.html" title="class in org.apache.commons.math3.util">IterationManager</a></dt>
<dd>
<div class="block">Removes the specified iteration listener from the list of listeners
 currently attached to <code>this</code> object.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#removeMostRecentValue()">removeMostRecentValue()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Removes the most recent value from the dataset.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/TransformerMap.html#removeTransformer(java.lang.Class)">removeTransformer(Class&lt;?&gt;)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/TransformerMap.html" title="class in org.apache.commons.math3.util">TransformerMap</a></dt>
<dd>
<div class="block">Removes a Class to Transformer Mapping in the Map.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#replaceMostRecentValue(double)">replaceMostRecentValue(double)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Replaces the most recently stored value with the given value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/AbstractSimplex.html#replaceWorstPoint(org.apache.commons.math3.optim.PointValuePair, java.util.Comparator)">replaceWorstPoint(PointValuePair, Comparator&lt;PointValuePair&gt;)</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/AbstractSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">AbstractSimplex</a></dt>
<dd>
<div class="block">Replace the worst point of the simplex by a new point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/AbstractSimplex.html#replaceWorstPoint(org.apache.commons.math3.optimization.PointValuePair, java.util.Comparator)">replaceWorstPoint(PointValuePair, Comparator&lt;PointValuePair&gt;)</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/AbstractSimplex.html" title="class in org.apache.commons.math3.optimization.direct">AbstractSimplex</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Replace the worst point of the simplex by a new point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/ValueServer.html#REPLAY_MODE">REPLAY_MODE</a></span> - Static variable in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/ValueServer.html" title="class in org.apache.commons.math3.random">ValueServer</a></dt>
<dd>
<div class="block">Replay data from valuesFilePath.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Precision.html#representableDelta(double, double)">representableDelta(double, double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Precision.html" title="class in org.apache.commons.math3.util">Precision</a></dt>
<dd>
<div class="block">Computes a number <code>delta</code> close to <code>originalDelta</code> with
 the property that</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/NordsieckStepInterpolator.html#rescale(double)">rescale(double)</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/NordsieckStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">NordsieckStepInterpolator</a></dt>
<dd>
<div class="block">Rescale the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#reSeed(long)">reSeed(long)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random">EmpiricalDistribution</a></dt>
<dd>
<div class="block">Reseeds the random number generator used by <a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#getNextValue()"><code>EmpiricalDistribution.getNextValue()</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataGenerator.html#reSeed(long)">reSeed(long)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random">RandomDataGenerator</a></dt>
<dd>
<div class="block">Reseeds the random number generator with the supplied seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataGenerator.html#reSeed()">reSeed()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random">RandomDataGenerator</a></dt>
<dd>
<div class="block">Reseeds the random number generator with
 <code>System.currentTimeMillis() + System.identityHashCode(this))</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataImpl.html#reSeed(long)">reSeed(long)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random">RandomDataImpl</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Reseeds the random number generator with the supplied seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataImpl.html#reSeed()">reSeed()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random">RandomDataImpl</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Reseeds the random number generator with
 <code>System.currentTimeMillis() + System.identityHashCode(this))</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/ValueServer.html#reSeed(long)">reSeed(long)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/ValueServer.html" title="class in org.apache.commons.math3.random">ValueServer</a></dt>
<dd>
<div class="block">Reseeds the random data generator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/AbstractIntegerDistribution.html#reseedRandomGenerator(long)">reseedRandomGenerator(long)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/AbstractIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractIntegerDistribution</a></dt>
<dd>
<div class="block">Reseed the random generator used to generate samples.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/AbstractMultivariateRealDistribution.html#reseedRandomGenerator(long)">reseedRandomGenerator(long)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/AbstractMultivariateRealDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractMultivariateRealDistribution</a></dt>
<dd>
<div class="block">Reseeds the random generator used to generate samples.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/AbstractRealDistribution.html#reseedRandomGenerator(long)">reseedRandomGenerator(long)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/AbstractRealDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractRealDistribution</a></dt>
<dd>
<div class="block">Reseed the random generator used to generate samples.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/EnumeratedDistribution.html#reseedRandomGenerator(long)">reseedRandomGenerator(long)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/EnumeratedDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedDistribution</a></dt>
<dd>
<div class="block">Reseed the random generator used to generate samples.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/IntegerDistribution.html#reseedRandomGenerator(long)">reseedRandomGenerator(long)</a></span> - Method in interface org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/IntegerDistribution.html" title="interface in org.apache.commons.math3.distribution">IntegerDistribution</a></dt>
<dd>
<div class="block">Reseed the random generator used to generate samples.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/MixtureMultivariateRealDistribution.html#reseedRandomGenerator(long)">reseedRandomGenerator(long)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/MixtureMultivariateRealDistribution.html" title="class in org.apache.commons.math3.distribution">MixtureMultivariateRealDistribution</a></dt>
<dd>
<div class="block">Reseeds the random generator used to generate samples.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/MultivariateRealDistribution.html#reseedRandomGenerator(long)">reseedRandomGenerator(long)</a></span> - Method in interface org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/MultivariateRealDistribution.html" title="interface in org.apache.commons.math3.distribution">MultivariateRealDistribution</a></dt>
<dd>
<div class="block">Reseeds the random generator used to generate samples.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/RealDistribution.html#reseedRandomGenerator(long)">reseedRandomGenerator(long)</a></span> - Method in interface org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/RealDistribution.html" title="interface in org.apache.commons.math3.distribution">RealDistribution</a></dt>
<dd>
<div class="block">Reseed the random generator used to generate samples.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#reseedRandomGenerator(long)">reseedRandomGenerator(long)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random">EmpiricalDistribution</a></dt>
<dd>
<div class="block">Reseed the random generator used to generate samples.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataGenerator.html#reSeedSecure()">reSeedSecure()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random">RandomDataGenerator</a></dt>
<dd>
<div class="block">Reseeds the secure random number generator with the current time in
 milliseconds.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataGenerator.html#reSeedSecure(long)">reSeedSecure(long)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random">RandomDataGenerator</a></dt>
<dd>
<div class="block">Reseeds the secure random number generator with the supplied seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataImpl.html#reSeedSecure()">reSeedSecure()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random">RandomDataImpl</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Reseeds the secure random number generator with the current time in
 milliseconds.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataImpl.html#reSeedSecure(long)">reSeedSecure(long)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random">RandomDataImpl</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Reseeds the secure random number generator with the supplied seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html#reset(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">reset(Vector3D, Vector3D)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Line</a></dt>
<dd>
<div class="block">Reset the instance as if built from two points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#reset(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">reset(Vector3D, Vector3D)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block">Reset the instance as if built from a point and a normal.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#reset(org.apache.commons.math3.geometry.euclidean.threed.Plane)">reset(Plane)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block">Reset the instance from another one.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#reset(org.apache.commons.math3.geometry.euclidean.twod.Vector2D, org.apache.commons.math3.geometry.euclidean.twod.Vector2D)">reset(Vector2D, Vector2D)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Line</a></dt>
<dd>
<div class="block">Reset the instance as if built from two points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#reset(org.apache.commons.math3.geometry.euclidean.twod.Vector2D, double)">reset(Vector2D, double)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Line</a></dt>
<dd>
<div class="block">Reset the instance as if built from a line and an angle.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html#reset(org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">reset(Vector3D)</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html" title="class in org.apache.commons.math3.geometry.spherical.twod">Circle</a></dt>
<dd>
<div class="block">Reset the instance as if built from a pole.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/events/EventState.html#reset(double, double[])">reset(double, double[])</a></span> - Method in class org.apache.commons.math3.ode.events.<a href="./org/apache/commons/math3/ode/events/EventState.html" title="class in org.apache.commons.math3.ode.events">EventState</a></dt>
<dd>
<div class="block">Let the event handler reset the state if it wants.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Incrementor.html#resetCount()">resetCount()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Incrementor.html" title="class in org.apache.commons.math3.util">Incrementor</a></dt>
<dd>
<div class="block">Resets the counter to 0.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html#resetInternalState()">resetInternalState()</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">AdaptiveStepsizeIntegrator</a></dt>
<dd>
<div class="block">Reset internal state to dummy values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/IterationManager.html#resetIterationCount()">resetIterationCount()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/IterationManager.html" title="class in org.apache.commons.math3.util">IterationManager</a></dt>
<dd>
<div class="block">Sets the iteration count to 0.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractIntegrator.html#resetOccurred">resetOccurred</a></span> - Variable in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractIntegrator.html" title="class in org.apache.commons.math3.ode">AbstractIntegrator</a></dt>
<dd>
<div class="block">Indicator that a state or derivative reset was triggered by some event.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/ValueServer.html#resetReplayFile()">resetReplayFile()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/ValueServer.html" title="class in org.apache.commons.math3.random">ValueServer</a></dt>
<dd>
<div class="block">Resets REPLAY_MODE file pointer to the beginning of the <code>valuesFileURL</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/events/EventFilter.html#resetState(double, double[])">resetState(double, double[])</a></span> - Method in class org.apache.commons.math3.ode.events.<a href="./org/apache/commons/math3/ode/events/EventFilter.html" title="class in org.apache.commons.math3.ode.events">EventFilter</a></dt>
<dd>
<div class="block">Reset the state prior to continue the integration.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/events/EventHandler.html#resetState(double, double[])">resetState(double, double[])</a></span> - Method in interface org.apache.commons.math3.ode.events.<a href="./org/apache/commons/math3/ode/events/EventHandler.html" title="interface in org.apache.commons.math3.ode.events">EventHandler</a></dt>
<dd>
<div class="block">Reset the state prior to continue the integration.</div>
</dd>
<dt><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util"><span class="strong">ResizableDoubleArray</span></a> - Class in <a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a></dt>
<dd>
<div class="block">
 A variable length <a href="./org/apache/commons/math3/util/DoubleArray.html" title="interface in org.apache.commons.math3.util"><code>DoubleArray</code></a> implementation that automatically
 handles expanding and contracting its internal storage array as elements
 are added and removed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#ResizableDoubleArray()">ResizableDoubleArray()</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block">Creates an instance with default properties.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#ResizableDoubleArray(int)">ResizableDoubleArray(int)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block">Creates an instance with the specified initial capacity.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#ResizableDoubleArray(double[])">ResizableDoubleArray(double[])</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block">Creates an instance from an existing <code>double[]</code> with the
 initial capacity and numElements corresponding to the size of
 the supplied <code>double[]</code> array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#ResizableDoubleArray(int, float)">ResizableDoubleArray(int, float)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1. Please use
 <a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#ResizableDoubleArray(int, double)"><code>ResizableDoubleArray.ResizableDoubleArray(int,double)</code></a> instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#ResizableDoubleArray(int, double)">ResizableDoubleArray(int, double)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block">Creates an instance with the specified initial capacity
 and expansion factor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#ResizableDoubleArray(int, float, float)">ResizableDoubleArray(int, float, float)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1. Please use
 <a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#ResizableDoubleArray(int, double, double)"><code>ResizableDoubleArray.ResizableDoubleArray(int,double,double)</code></a> instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#ResizableDoubleArray(int, double, double)">ResizableDoubleArray(int, double, double)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block">Creates an instance with the specified initial capacity,
 expansion factor, and contraction criteria.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#ResizableDoubleArray(int, float, float, int)">ResizableDoubleArray(int, float, float, int)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1. Please use
 <a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#ResizableDoubleArray(int, double, double, org.apache.commons.math3.util.ResizableDoubleArray.ExpansionMode, double...)"><code>ResizableDoubleArray.ResizableDoubleArray(int,double,double,ExpansionMode,double[])</code></a>
 instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#ResizableDoubleArray(int, double, double, org.apache.commons.math3.util.ResizableDoubleArray.ExpansionMode, double...)">ResizableDoubleArray(int, double, double, ResizableDoubleArray.ExpansionMode, double...)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block">Creates an instance with the specified properties.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#ResizableDoubleArray(org.apache.commons.math3.util.ResizableDoubleArray)">ResizableDoubleArray(ResizableDoubleArray)</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block">Copy constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/util/ResizableDoubleArray.ExpansionMode.html" title="enum in org.apache.commons.math3.util"><span class="strong">ResizableDoubleArray.ExpansionMode</span></a> - Enum in <a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a></dt>
<dd>
<div class="block">Specification of expansion algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/AbstractLinearOptimizer.html#restrictToNonNegative()">restrictToNonNegative()</a></span> - Method in class org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/AbstractLinearOptimizer.html" title="class in org.apache.commons.math3.optimization.linear">AbstractLinearOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractSubHyperplane.html#reunite(org.apache.commons.math3.geometry.partitioning.SubHyperplane)">reunite(SubHyperplane&lt;S&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractSubHyperplane.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractSubHyperplane</a></dt>
<dd>
<div class="block">Compute the union of the instance and another sub-hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/SubHyperplane.html#reunite(org.apache.commons.math3.geometry.partitioning.SubHyperplane)">reunite(SubHyperplane&lt;S&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/SubHyperplane.html" title="interface in org.apache.commons.math3.geometry.partitioning">SubHyperplane</a></dt>
<dd>
<div class="block">Compute the union of the instance and another sub-hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html#revert()">revert()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldRotation</a></dt>
<dd>
<div class="block">Revert a rotation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html#revert()">revert()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Line</a></dt>
<dd>
<div class="block">Get a line with reversed direction.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html#revert()">revert()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Rotation</a></dt>
<dd>
<div class="block">Revert a rotation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/OrientedPoint.html#revertSelf()">revertSelf()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/OrientedPoint.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">OrientedPoint</a></dt>
<dd>
<div class="block">Revert the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#revertSelf()">revertSelf()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block">Revert the plane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#revertSelf()">revertSelf()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Line</a></dt>
<dd>
<div class="block">Revert the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html#revertSelf()">revertSelf()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html" title="class in org.apache.commons.math3.geometry.spherical.twod">Circle</a></dt>
<dd>
<div class="block">Revert the instance.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/solvers/RiddersSolver.html" title="class in org.apache.commons.math3.analysis.solvers"><span class="strong">RiddersSolver</span></a> - Class in <a href="./org/apache/commons/math3/analysis/solvers/package-summary.html">org.apache.commons.math3.analysis.solvers</a></dt>
<dd>
<div class="block">Implements the <a href="http://mathworld.wolfram.com/RiddersMethod.html">
 Ridders' Method</a> for root finding of real univariate functions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/RiddersSolver.html#RiddersSolver()">RiddersSolver()</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/RiddersSolver.html" title="class in org.apache.commons.math3.analysis.solvers">RiddersSolver</a></dt>
<dd>
<div class="block">Construct a solver with default accuracy (1e-6).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/RiddersSolver.html#RiddersSolver(double)">RiddersSolver(double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/RiddersSolver.html" title="class in org.apache.commons.math3.analysis.solvers">RiddersSolver</a></dt>
<dd>
<div class="block">Construct a solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/RiddersSolver.html#RiddersSolver(double, double)">RiddersSolver(double, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/RiddersSolver.html" title="class in org.apache.commons.math3.analysis.solvers">RiddersSolver</a></dt>
<dd>
<div class="block">Construct a solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#rint()">rint()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Get the whole number that is the nearest to the instance, or the even one if x is exactly half way between two integers.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#rint()">rint()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Get the whole number that is the nearest to the instance, or the even one if x is exactly half way between two integers.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Rint.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Rint</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block"><code>rint</code> function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Rint.html#Rint()">Rint()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Rint.html" title="class in org.apache.commons.math3.analysis.function">Rint</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#rint()">rint()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Round to nearest integer using the round-half-even method.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#rint()">rint()</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Get the whole number that is the nearest to the instance, or the even one if x is exactly half way between two integers.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#rint()">rint()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Get the whole number that is the nearest to the instance, or the even one if x is exactly half way between two integers.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#rint(double)">rint(double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Get the whole number that is the nearest to x, or the even one if x is exactly half way between two integers.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/RombergIntegrator.html#ROMBERG_MAX_ITERATIONS_COUNT">ROMBERG_MAX_ITERATIONS_COUNT</a></span> - Static variable in class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/RombergIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">RombergIntegrator</a></dt>
<dd>
<div class="block">Maximal number of iterations for Romberg.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/integration/RombergIntegrator.html" title="class in org.apache.commons.math3.analysis.integration"><span class="strong">RombergIntegrator</span></a> - Class in <a href="./org/apache/commons/math3/analysis/integration/package-summary.html">org.apache.commons.math3.analysis.integration</a></dt>
<dd>
<div class="block">Implements the <a href="http://mathworld.wolfram.com/RombergIntegration.html">
 Romberg Algorithm</a> for integration of real univariate functions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/RombergIntegrator.html#RombergIntegrator(double, double, int, int)">RombergIntegrator(double, double, int, int)</a></span> - Constructor for class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/RombergIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">RombergIntegrator</a></dt>
<dd>
<div class="block">Build a Romberg integrator with given accuracies and iterations counts.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/RombergIntegrator.html#RombergIntegrator(int, int)">RombergIntegrator(int, int)</a></span> - Constructor for class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/RombergIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">RombergIntegrator</a></dt>
<dd>
<div class="block">Build a Romberg integrator with given iteration counts.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/RombergIntegrator.html#RombergIntegrator()">RombergIntegrator()</a></span> - Constructor for class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/RombergIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">RombergIntegrator</a></dt>
<dd>
<div class="block">Construct a Romberg integrator with default settings
 (max iteration count set to <a href="./org/apache/commons/math3/analysis/integration/RombergIntegrator.html#ROMBERG_MAX_ITERATIONS_COUNT"><code>RombergIntegrator.ROMBERG_MAX_ITERATIONS_COUNT</code></a>)</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/GTest.html#rootLogLikelihoodRatio(long, long, long, long)">rootLogLikelihoodRatio(long, long, long, long)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/GTest.html" title="class in org.apache.commons.math3.stat.inference">GTest</a></dt>
<dd>
<div class="block">Calculates the root log-likelihood ratio for 2 state Datasets.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#rootLogLikelihoodRatio(long, long, long, long)">rootLogLikelihoodRatio(long, long, long, long)</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#rootN(int)">rootN(int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">N<sup>th</sup> root.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#rootN(double[], int, int, double[], int)">rootN(double[], int, int, double[], int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Compute n<sup>th</sup> root of a derivative structure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#rootN(int)">rootN(int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">N<sup>th</sup> root.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#rootN(int)">rootN(int)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">N<sup>th</sup> root.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#rootN(int)">rootN(int)</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">N<sup>th</sup> root.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#rootN(int)">rootN(int)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">N<sup>th</sup> root.</div>
</dd>
<dt><a href="./org/apache/commons/math3/complex/RootsOfUnity.html" title="class in org.apache.commons.math3.complex"><span class="strong">RootsOfUnity</span></a> - Class in <a href="./org/apache/commons/math3/complex/package-summary.html">org.apache.commons.math3.complex</a></dt>
<dd>
<div class="block">A helper class for the computation and caching of the <code>n</code>-th roots of
 unity.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/RootsOfUnity.html#RootsOfUnity()">RootsOfUnity()</a></span> - Constructor for class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/RootsOfUnity.html" title="class in org.apache.commons.math3.complex">RootsOfUnity</a></dt>
<dd>
<div class="block">Build an engine for computing the <code>n</code>-th roots of unity.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#rotate(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Rotation)">rotate(Vector3D, Rotation)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block">Rotate the plane around the specified point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/PolyhedronsSet.html#rotate(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Rotation)">rotate(Vector3D, Rotation)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/PolyhedronsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">PolyhedronsSet</a></dt>
<dd>
<div class="block">Rotate the region around the specified point.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed"><span class="strong">Rotation</span></a> - Class in <a href="./org/apache/commons/math3/geometry/euclidean/threed/package-summary.html">org.apache.commons.math3.geometry.euclidean.threed</a></dt>
<dd>
<div class="block">This class implements rotations in a three-dimensional space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html#Rotation(double, double, double, double, boolean)">Rotation(double, double, double, double, boolean)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Rotation</a></dt>
<dd>
<div class="block">Build a rotation from the quaternion coordinates.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html#Rotation(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, double)">Rotation(Vector3D, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Rotation</a></dt>
<dd>
<div class="block">Build a rotation from an axis and an angle.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html#Rotation(double[][], double)">Rotation(double[][], double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Rotation</a></dt>
<dd>
<div class="block">Build a rotation from a 3X3 matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html#Rotation(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">Rotation(Vector3D, Vector3D, Vector3D, Vector3D)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Rotation</a></dt>
<dd>
<div class="block">Build the rotation that transforms a pair of vector into another pair.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html#Rotation(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">Rotation(Vector3D, Vector3D)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Rotation</a></dt>
<dd>
<div class="block">Build one of the rotations that transform one vector into another one.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html#Rotation(org.apache.commons.math3.geometry.euclidean.threed.RotationOrder, double, double, double)">Rotation(RotationOrder, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Rotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Rotation</a></dt>
<dd>
<div class="block">Build a rotation from three Cardan or Euler elementary rotations.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/threed/RotationOrder.html" title="class in org.apache.commons.math3.geometry.euclidean.threed"><span class="strong">RotationOrder</span></a> - Class in <a href="./org/apache/commons/math3/geometry/euclidean/threed/package-summary.html">org.apache.commons.math3.geometry.euclidean.threed</a></dt>
<dd>
<div class="block">This class is a utility representing a rotation order specification
 for Cardan or Euler angles specification.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#round()">round()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Get the closest long to instance value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#round()">round()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Get the closest long to instance value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#round(int)">round(int)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Round this given the next digit n using the current rounding mode.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#round()">round()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Get the closest long to instance value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpDec.html#round(int)">round(int)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpDec.html" title="class in org.apache.commons.math3.dfp">DfpDec</a></dt>
<dd>
<div class="block">Round this given the next digit n using the current rounding mode.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#round()">round()</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Get the closest long to instance value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#round()">round()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Get the closest long to instance value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#round(double)">round(double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Get the closest long to x.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#round(float)">round(float)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Get the closest int to x.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Precision.html#round(double, int)">round(double, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Precision.html" title="class in org.apache.commons.math3.util">Precision</a></dt>
<dd>
<div class="block">Rounds the given value to the specified number of decimal places.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Precision.html#round(double, int, int)">round(double, int, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Precision.html" title="class in org.apache.commons.math3.util">Precision</a></dt>
<dd>
<div class="block">Rounds the given value to the specified number of decimal places.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Precision.html#round(float, int)">round(float, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Precision.html" title="class in org.apache.commons.math3.util">Precision</a></dt>
<dd>
<div class="block">Rounds the given value to the specified number of decimal places.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Precision.html#round(float, int, int)">round(float, int, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Precision.html" title="class in org.apache.commons.math3.util">Precision</a></dt>
<dd>
<div class="block">Rounds the given value to the specified number of decimal places.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#rows">rows</a></span> - Variable in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1.</i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/RRQRDecomposition.html" title="class in org.apache.commons.math3.linear"><span class="strong">RRQRDecomposition</span></a> - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Calculates the rank-revealing QR-decomposition of a matrix, with column pivoting.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RRQRDecomposition.html#RRQRDecomposition(org.apache.commons.math3.linear.RealMatrix)">RRQRDecomposition(RealMatrix)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RRQRDecomposition.html" title="class in org.apache.commons.math3.linear">RRQRDecomposition</a></dt>
<dd>
<div class="block">Calculates the QR-decomposition of the given matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RRQRDecomposition.html#RRQRDecomposition(org.apache.commons.math3.linear.RealMatrix, double)">RRQRDecomposition(RealMatrix, double)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RRQRDecomposition.html" title="class in org.apache.commons.math3.linear">RRQRDecomposition</a></dt>
<dd>
<div class="block">Calculates the QR-decomposition of the given matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/sofm/KohonenTrainingTask.html#run()">run()</a></span> - Method in class org.apache.commons.math3.ml.neuralnet.sofm.<a href="./org/apache/commons/math3/ml/neuralnet/sofm/KohonenTrainingTask.html" title="class in org.apache.commons.math3.ml.neuralnet.sofm">KohonenTrainingTask</a></dt>
<dt><a href="./org/apache/commons/math3/ode/nonstiff/RungeKuttaIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff"><span class="strong">RungeKuttaIntegrator</span></a> - Class in <a href="./org/apache/commons/math3/ode/nonstiff/package-summary.html">org.apache.commons.math3.ode.nonstiff</a></dt>
<dd>
<div class="block">This class implements the common part of all fixed step Runge-Kutta
 integrators for Ordinary Differential Equations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/RungeKuttaIntegrator.html#RungeKuttaIntegrator(java.lang.String, double[], double[][], double[], org.apache.commons.math3.ode.nonstiff.RungeKuttaStepInterpolator, double)">RungeKuttaIntegrator(String, double[], double[][], double[], RungeKuttaStepInterpolator, double)</a></span> - Constructor for class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/RungeKuttaIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">RungeKuttaIntegrator</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
</dl>
<a name="_S_">
<!--   -->
</a>
<h2 class="title">S</h2>
<dl>
<dt><a href="./org/apache/commons/math3/geometry/spherical/oned/S1Point.html" title="class in org.apache.commons.math3.geometry.spherical.oned"><span class="strong">S1Point</span></a> - Class in <a href="./org/apache/commons/math3/geometry/spherical/oned/package-summary.html">org.apache.commons.math3.geometry.spherical.oned</a></dt>
<dd>
<div class="block">This class represents a point on the 1-sphere.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/S1Point.html#S1Point(double)">S1Point(double)</a></span> - Constructor for class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/S1Point.html" title="class in org.apache.commons.math3.geometry.spherical.oned">S1Point</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html" title="class in org.apache.commons.math3.geometry.spherical.twod"><span class="strong">S2Point</span></a> - Class in <a href="./org/apache/commons/math3/geometry/spherical/twod/package-summary.html">org.apache.commons.math3.geometry.spherical.twod</a></dt>
<dd>
<div class="block">This class represents a point on the 2-sphere.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html#S2Point(double, double)">S2Point(double, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html" title="class in org.apache.commons.math3.geometry.spherical.twod">S2Point</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html#S2Point(org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">S2Point(Vector3D)</a></span> - Constructor for class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/S2Point.html" title="class in org.apache.commons.math3.geometry.spherical.twod">S2Point</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Precision.html#SAFE_MIN">SAFE_MIN</a></span> - Static variable in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Precision.html" title="class in org.apache.commons.math3.util">Precision</a></dt>
<dd>
<div class="block">Safe minimum, such that <code>1 / SAFE_MIN</code> does not overflow.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#safeNorm(double[])">safeNorm(double[])</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Returns the Cartesian norm (2-norm), handling both overflow and underflow.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/OrientedPoint.html#sameOrientationAs(org.apache.commons.math3.geometry.partitioning.Hyperplane)">sameOrientationAs(Hyperplane&lt;Euclidean1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/OrientedPoint.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">OrientedPoint</a></dt>
<dd>
<div class="block">Check if the instance has the same orientation as another hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#sameOrientationAs(org.apache.commons.math3.geometry.partitioning.Hyperplane)">sameOrientationAs(Hyperplane&lt;Euclidean3D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block">Check if the instance has the same orientation as another hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#sameOrientationAs(org.apache.commons.math3.geometry.partitioning.Hyperplane)">sameOrientationAs(Hyperplane&lt;Euclidean2D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Line</a></dt>
<dd>
<div class="block">Check if the instance has the same orientation as another hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/Hyperplane.html#sameOrientationAs(org.apache.commons.math3.geometry.partitioning.Hyperplane)">sameOrientationAs(Hyperplane&lt;S&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/Hyperplane.html" title="interface in org.apache.commons.math3.geometry.partitioning">Hyperplane</a></dt>
<dd>
<div class="block">Check if the instance has the same orientation as another hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/LimitAngle.html#sameOrientationAs(org.apache.commons.math3.geometry.partitioning.Hyperplane)">sameOrientationAs(Hyperplane&lt;Sphere1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/LimitAngle.html" title="class in org.apache.commons.math3.geometry.spherical.oned">LimitAngle</a></dt>
<dd>
<div class="block">Check if the instance has the same orientation as another hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html#sameOrientationAs(org.apache.commons.math3.geometry.partitioning.Hyperplane)">sameOrientationAs(Hyperplane&lt;Sphere2D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html" title="class in org.apache.commons.math3.geometry.spherical.twod">Circle</a></dt>
<dd>
<div class="block">Check if the instance has the same orientation as another hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/FunctionUtils.html#sample(org.apache.commons.math3.analysis.UnivariateFunction, double, double, int)">sample(UnivariateFunction, double, double, int)</a></span> - Static method in class org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/FunctionUtils.html" title="class in org.apache.commons.math3.analysis">FunctionUtils</a></dt>
<dd>
<div class="block">Samples the specified univariate real function on the specified interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/AbstractIntegerDistribution.html#sample()">sample()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/AbstractIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractIntegerDistribution</a></dt>
<dd>
<div class="block">Generate a random value sampled from this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/AbstractIntegerDistribution.html#sample(int)">sample(int)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/AbstractIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractIntegerDistribution</a></dt>
<dd>
<div class="block">Generate a random sample from the distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/AbstractMultivariateRealDistribution.html#sample()">sample()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/AbstractMultivariateRealDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractMultivariateRealDistribution</a></dt>
<dd>
<div class="block">Generates a random value vector sampled from this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/AbstractMultivariateRealDistribution.html#sample(int)">sample(int)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/AbstractMultivariateRealDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractMultivariateRealDistribution</a></dt>
<dd>
<div class="block">Generates a list of a random value vectors from the distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/AbstractRealDistribution.html#sample()">sample()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/AbstractRealDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractRealDistribution</a></dt>
<dd>
<div class="block">Generate a random value sampled from this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/AbstractRealDistribution.html#sample(int)">sample(int)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/AbstractRealDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractRealDistribution</a></dt>
<dd>
<div class="block">Generate a random sample from the distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/EnumeratedDistribution.html#sample()">sample()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/EnumeratedDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedDistribution</a></dt>
<dd>
<div class="block">Generate a random value sampled from this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/EnumeratedDistribution.html#sample(int)">sample(int)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/EnumeratedDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedDistribution</a></dt>
<dd>
<div class="block">Generate a random sample from the distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/EnumeratedDistribution.html#sample(int, T[])">sample(int, T[])</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/EnumeratedDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedDistribution</a></dt>
<dd>
<div class="block">Generate a random sample from the distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html#sample()">sample()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedIntegerDistribution</a></dt>
<dd>
<div class="block">Generate a random value sampled from this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/EnumeratedRealDistribution.html#sample()">sample()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/EnumeratedRealDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedRealDistribution</a></dt>
<dd>
<div class="block">Generate a random value sampled from this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html#sample()">sample()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ExponentialDistribution.html" title="class in org.apache.commons.math3.distribution">ExponentialDistribution</a></dt>
<dd>
<div class="block">Generate a random value sampled from this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/GammaDistribution.html#sample()">sample()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/GammaDistribution.html" title="class in org.apache.commons.math3.distribution">GammaDistribution</a></dt>
<dd>
<div class="block">This implementation uses the following algorithms:</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/IntegerDistribution.html#sample()">sample()</a></span> - Method in interface org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/IntegerDistribution.html" title="interface in org.apache.commons.math3.distribution">IntegerDistribution</a></dt>
<dd>
<div class="block">Generate a random value sampled from this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/IntegerDistribution.html#sample(int)">sample(int)</a></span> - Method in interface org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/IntegerDistribution.html" title="interface in org.apache.commons.math3.distribution">IntegerDistribution</a></dt>
<dd>
<div class="block">Generate a random sample from the distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html#sample()">sample()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/LogNormalDistribution.html" title="class in org.apache.commons.math3.distribution">LogNormalDistribution</a></dt>
<dd>
<div class="block">Generate a random value sampled from this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/MixtureMultivariateRealDistribution.html#sample()">sample()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/MixtureMultivariateRealDistribution.html" title="class in org.apache.commons.math3.distribution">MixtureMultivariateRealDistribution</a></dt>
<dd>
<div class="block">Generates a random value vector sampled from this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/MultivariateNormalDistribution.html#sample()">sample()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/MultivariateNormalDistribution.html" title="class in org.apache.commons.math3.distribution">MultivariateNormalDistribution</a></dt>
<dd>
<div class="block">Generates a random value vector sampled from this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/MultivariateRealDistribution.html#sample()">sample()</a></span> - Method in interface org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/MultivariateRealDistribution.html" title="interface in org.apache.commons.math3.distribution">MultivariateRealDistribution</a></dt>
<dd>
<div class="block">Generates a random value vector sampled from this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/MultivariateRealDistribution.html#sample(int)">sample(int)</a></span> - Method in interface org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/MultivariateRealDistribution.html" title="interface in org.apache.commons.math3.distribution">MultivariateRealDistribution</a></dt>
<dd>
<div class="block">Generates a list of a random value vectors from the distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/NormalDistribution.html#sample()">sample()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/NormalDistribution.html" title="class in org.apache.commons.math3.distribution">NormalDistribution</a></dt>
<dd>
<div class="block">Generate a random value sampled from this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ParetoDistribution.html#sample()">sample()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ParetoDistribution.html" title="class in org.apache.commons.math3.distribution">ParetoDistribution</a></dt>
<dd>
<div class="block">Generate a random value sampled from this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/PoissonDistribution.html#sample()">sample()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/PoissonDistribution.html" title="class in org.apache.commons.math3.distribution">PoissonDistribution</a></dt>
<dd>
<div class="block">Generate a random value sampled from this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/RealDistribution.html#sample()">sample()</a></span> - Method in interface org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/RealDistribution.html" title="interface in org.apache.commons.math3.distribution">RealDistribution</a></dt>
<dd>
<div class="block">Generate a random value sampled from this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/RealDistribution.html#sample(int)">sample(int)</a></span> - Method in interface org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/RealDistribution.html" title="interface in org.apache.commons.math3.distribution">RealDistribution</a></dt>
<dd>
<div class="block">Generate a random sample from the distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/UniformIntegerDistribution.html#sample()">sample()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/UniformIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">UniformIntegerDistribution</a></dt>
<dd>
<div class="block">Generate a random value sampled from this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html#sample()">sample()</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html" title="class in org.apache.commons.math3.distribution">UniformRealDistribution</a></dt>
<dd>
<div class="block">Generate a random value sampled from this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/EmpiricalDistribution.html#sample()">sample()</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/EmpiricalDistribution.html" title="class in org.apache.commons.math3.random">EmpiricalDistribution</a></dt>
<dd>
<div class="block">Generate a random value sampled from this distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractIntegrator.html#sanityChecks(org.apache.commons.math3.ode.ExpandableStatefulODE, double)">sanityChecks(ExpandableStatefulODE, double)</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractIntegrator.html" title="class in org.apache.commons.math3.ode">AbstractIntegrator</a></dt>
<dd>
<div class="block">Check the integration span.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html#sanityChecks(org.apache.commons.math3.ode.ExpandableStatefulODE, double)">sanityChecks(ExpandableStatefulODE, double)</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">AdaptiveStepsizeIntegrator</a></dt>
<dd>
<div class="block">Check the integration span.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html#scalAbsoluteTolerance">scalAbsoluteTolerance</a></span> - Variable in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">AdaptiveStepsizeIntegrator</a></dt>
<dd>
<div class="block">Allowed absolute scalar error.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#scalarAdd(T)">scalarAdd(T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Increment each entry of this matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#scalarAdd(double)">scalarAdd(double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Returns the result of adding <code>d</code> to each entry of <code>this</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#scalarAdd(T)">scalarAdd(T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Increment each entry of this matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#scalarAdd(double)">scalarAdd(double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Returns the result of adding <code>d</code> to each entry of <code>this</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#scalarAdd(T)">scalarAdd(T)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Increment each entry of this matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#scalarAdd(double)">scalarAdd(double)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Returns the result of adding <code>d</code> to each entry of <code>this</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#scalarMultiply(double)">scalarMultiply(double)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Multiply the instance by a scalar.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#scalarMultiply(T)">scalarMultiply(T)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Multiply the instance by a scalar.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#scalarMultiply(double)">scalarMultiply(double)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Multiply the instance by a scalar.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#scalarMultiply(double)">scalarMultiply(double)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Multiply the instance by a scalar.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#scalarMultiply(double)">scalarMultiply(double)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Multiply the instance by a scalar.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/Vector.html#scalarMultiply(double)">scalarMultiply(double)</a></span> - Method in interface org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/Vector.html" title="interface in org.apache.commons.math3.geometry">Vector</a></dt>
<dd>
<div class="block">Multiply the instance by a scalar.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#scalarMultiply(T)">scalarMultiply(T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Multiply each entry by <code>d</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#scalarMultiply(double)">scalarMultiply(double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Returns the result of multiplying each entry of <code>this</code> by
 <code>d</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#scalarMultiply(T)">scalarMultiply(T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Multiply each entry by <code>d</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#scalarMultiply(double)">scalarMultiply(double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Returns the result of multiplying each entry of <code>this</code> by
 <code>d</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#scalarMultiply(T)">scalarMultiply(T)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Multiply each entry by <code>d</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#scalarMultiply(double)">scalarMultiply(double)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Returns the result of multiplying each entry of <code>this</code> by
 <code>d</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#scalb(int)">scalb(int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Multiply the instance by a power of 2.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#scalb(int)">scalb(int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Multiply the instance by a power of 2.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#scalb(int)">scalb(int)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Multiply the instance by a power of 2.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#scalb(int)">scalb(int)</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Multiply the instance by a power of 2.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#scalb(int)">scalb(int)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Multiply the instance by a power of 2.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#scalb(double, int)">scalb(double, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Multiply a double number by a power of 2.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#scalb(float, int)">scalb(float, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Multiply a float number by a power of 2.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#scale(double, double[])">scale(double, double[])</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Create a copy of an array scaled by a value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/TransformUtils.html#scaleArray(double[], double)">scaleArray(double[], double)</a></span> - Static method in class org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/TransformUtils.html" title="class in org.apache.commons.math3.transform">TransformUtils</a></dt>
<dd>
<div class="block">Multiply every component in the given real array by the
 given real number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/TransformUtils.html#scaleArray(org.apache.commons.math3.complex.Complex[], double)">scaleArray(Complex[], double)</a></span> - Static method in class org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/TransformUtils.html" title="class in org.apache.commons.math3.transform">TransformUtils</a></dt>
<dd>
<div class="block">Multiply every component in the given complex array by the
 given real number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/MultistepIntegrator.html#scaled">scaled</a></span> - Variable in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/MultistepIntegrator.html" title="class in org.apache.commons.math3.ode">MultistepIntegrator</a></dt>
<dd>
<div class="block">First scaled derivative (h y').</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#scaleInPlace(double, double[])">scaleInPlace(double, double[])</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Multiply each element of an array by a value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html#scalRelativeTolerance">scalRelativeTolerance</a></span> - Variable in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">AdaptiveStepsizeIntegrator</a></dt>
<dd>
<div class="block">Allowed relative scalar error.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/evaluation/ClusterEvaluator.html#score(java.util.List)">score(List&lt;? extends Cluster&lt;T&gt;&gt;)</a></span> - Method in class org.apache.commons.math3.ml.clustering.evaluation.<a href="./org/apache/commons/math3/ml/clustering/evaluation/ClusterEvaluator.html" title="class in org.apache.commons.math3.ml.clustering.evaluation">ClusterEvaluator</a></dt>
<dd>
<div class="block">Computes the evaluation score for the given list of clusters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/evaluation/SumOfClusterVariances.html#score(java.util.List)">score(List&lt;? extends Cluster&lt;T&gt;&gt;)</a></span> - Method in class org.apache.commons.math3.ml.clustering.evaluation.<a href="./org/apache/commons/math3/ml/clustering/evaluation/SumOfClusterVariances.html" title="class in org.apache.commons.math3.ml.clustering.evaluation">SumOfClusterVariances</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/HaltonSequenceGenerator.html#scramble(int, int, int, int)">scramble(int, int, int, int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/HaltonSequenceGenerator.html" title="class in org.apache.commons.math3.random">HaltonSequenceGenerator</a></dt>
<dd>
<div class="block">Performs scrambling of digit <code>d_j</code> according to the formula:</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/LineSearch.html#search(double[], double[])">search(double[], double[])</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/LineSearch.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar">LineSearch</a></dt>
<dd>
<div class="block">Finds the number <code>alpha</code> that optimizes
 <code>f(startPoint + alpha * direction)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/BracketFinder.html#search(org.apache.commons.math3.analysis.UnivariateFunction, org.apache.commons.math3.optim.nonlinear.scalar.GoalType, double, double)">search(UnivariateFunction, GoalType, double, double)</a></span> - Method in class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/BracketFinder.html" title="class in org.apache.commons.math3.optim.univariate">BracketFinder</a></dt>
<dd>
<div class="block">Search new points that bracket a local optimum of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/BracketFinder.html#search(org.apache.commons.math3.analysis.UnivariateFunction, org.apache.commons.math3.optimization.GoalType, double, double)">search(UnivariateFunction, GoalType, double, double)</a></span> - Method in class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/BracketFinder.html" title="class in org.apache.commons.math3.optimization.univariate">BracketFinder</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Search new points that bracket a local optimum of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/Chromosome.html#searchForFitnessUpdate(org.apache.commons.math3.genetics.Population)">searchForFitnessUpdate(Population)</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/Chromosome.html" title="class in org.apache.commons.math3.genetics">Chromosome</a></dt>
<dd>
<div class="block">Searches the population for a chromosome representing the same solution, and if it finds one,
 updates the fitness to its value.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/univariate/SearchInterval.html" title="class in org.apache.commons.math3.optim.univariate"><span class="strong">SearchInterval</span></a> - Class in <a href="./org/apache/commons/math3/optim/univariate/package-summary.html">org.apache.commons.math3.optim.univariate</a></dt>
<dd>
<div class="block">Search interval and (optional) start value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/SearchInterval.html#SearchInterval(double, double, double)">SearchInterval(double, double, double)</a></span> - Constructor for class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/SearchInterval.html" title="class in org.apache.commons.math3.optim.univariate">SearchInterval</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/SearchInterval.html#SearchInterval(double, double)">SearchInterval(double, double)</a></span> - Constructor for class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/SearchInterval.html" title="class in org.apache.commons.math3.optim.univariate">SearchInterval</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/analysis/solvers/SecantSolver.html" title="class in org.apache.commons.math3.analysis.solvers"><span class="strong">SecantSolver</span></a> - Class in <a href="./org/apache/commons/math3/analysis/solvers/package-summary.html">org.apache.commons.math3.analysis.solvers</a></dt>
<dd>
<div class="block">Implements the <em>Secant</em> method for root-finding (approximating a
 zero of a univariate real function).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/SecantSolver.html#SecantSolver()">SecantSolver()</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/SecantSolver.html" title="class in org.apache.commons.math3.analysis.solvers">SecantSolver</a></dt>
<dd>
<div class="block">Construct a solver with default accuracy (1e-6).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/SecantSolver.html#SecantSolver(double)">SecantSolver(double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/SecantSolver.html" title="class in org.apache.commons.math3.analysis.solvers">SecantSolver</a></dt>
<dd>
<div class="block">Construct a solver.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/SecantSolver.html#SecantSolver(double, double)">SecantSolver(double, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/SecantSolver.html" title="class in org.apache.commons.math3.analysis.solvers">SecantSolver</a></dt>
<dd>
<div class="block">Construct a solver.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/SecondaryEquations.html" title="interface in org.apache.commons.math3.ode"><span class="strong">SecondaryEquations</span></a> - Interface in <a href="./org/apache/commons/math3/ode/package-summary.html">org.apache.commons.math3.ode</a></dt>
<dd>
<div class="block">This interface allows users to add secondary differential equations to a primary
 set of differential equations.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/moment/SecondMoment.html" title="class in org.apache.commons.math3.stat.descriptive.moment"><span class="strong">SecondMoment</span></a> - Class in <a href="./org/apache/commons/math3/stat/descriptive/moment/package-summary.html">org.apache.commons.math3.stat.descriptive.moment</a></dt>
<dd>
<div class="block">Computes a statistic related to the Second Central Moment.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/SecondMoment.html#SecondMoment()">SecondMoment()</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/SecondMoment.html" title="class in org.apache.commons.math3.stat.descriptive.moment">SecondMoment</a></dt>
<dd>
<div class="block">Create a SecondMoment instance</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/SecondMoment.html#SecondMoment(org.apache.commons.math3.stat.descriptive.moment.SecondMoment)">SecondMoment(SecondMoment)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/SecondMoment.html" title="class in org.apache.commons.math3.stat.descriptive.moment">SecondMoment</a></dt>
<dd>
<div class="block">Copy constructor, creates a new <code>SecondMoment</code> identical
 to the <code>original</code></div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/SecondOrderDifferentialEquations.html" title="interface in org.apache.commons.math3.ode"><span class="strong">SecondOrderDifferentialEquations</span></a> - Interface in <a href="./org/apache/commons/math3/ode/package-summary.html">org.apache.commons.math3.ode</a></dt>
<dd>
<div class="block">This interface represents a second order differential equations set.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/SecondOrderIntegrator.html" title="interface in org.apache.commons.math3.ode"><span class="strong">SecondOrderIntegrator</span></a> - Interface in <a href="./org/apache/commons/math3/ode/package-summary.html">org.apache.commons.math3.ode</a></dt>
<dd>
<div class="block">This interface represents a second order integrator for
 differential equations.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/threed/Segment.html" title="class in org.apache.commons.math3.geometry.euclidean.threed"><span class="strong">Segment</span></a> - Class in <a href="./org/apache/commons/math3/geometry/euclidean/threed/package-summary.html">org.apache.commons.math3.geometry.euclidean.threed</a></dt>
<dd>
<div class="block">Simple container for a two-points segment.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Segment.html#Segment(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Line)">Segment(Vector3D, Vector3D, Line)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Segment.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Segment</a></dt>
<dd>
<div class="block">Build a segment.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/twod/Segment.html" title="class in org.apache.commons.math3.geometry.euclidean.twod"><span class="strong">Segment</span></a> - Class in <a href="./org/apache/commons/math3/geometry/euclidean/twod/package-summary.html">org.apache.commons.math3.geometry.euclidean.twod</a></dt>
<dd>
<div class="block">Simple container for a two-points segment.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Segment.html#Segment(org.apache.commons.math3.geometry.euclidean.twod.Vector2D, org.apache.commons.math3.geometry.euclidean.twod.Vector2D, org.apache.commons.math3.geometry.euclidean.twod.Line)">Segment(Vector2D, Vector2D, Line)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Segment.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Segment</a></dt>
<dd>
<div class="block">Build a segment.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/SelectionPolicy.html#select(org.apache.commons.math3.genetics.Population)">select(Population)</a></span> - Method in interface org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/SelectionPolicy.html" title="interface in org.apache.commons.math3.genetics">SelectionPolicy</a></dt>
<dd>
<div class="block">Select two chromosomes from the population.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/TournamentSelection.html#select(org.apache.commons.math3.genetics.Population)">select(Population)</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/TournamentSelection.html" title="class in org.apache.commons.math3.genetics">TournamentSelection</a></dt>
<dd>
<div class="block">Select two chromosomes from the population.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/enclosing/WelzlEncloser.html#selectFarthest(java.lang.Iterable, org.apache.commons.math3.geometry.enclosing.EnclosingBall)">selectFarthest(Iterable&lt;P&gt;, EnclosingBall&lt;S, P&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.enclosing.<a href="./org/apache/commons/math3/geometry/enclosing/WelzlEncloser.html" title="class in org.apache.commons.math3.geometry.enclosing">WelzlEncloser</a></dt>
<dd>
<div class="block">Select the point farthest to the current ball.</div>
</dd>
<dt><a href="./org/apache/commons/math3/genetics/SelectionPolicy.html" title="interface in org.apache.commons.math3.genetics"><span class="strong">SelectionPolicy</span></a> - Interface in <a href="./org/apache/commons/math3/genetics/package-summary.html">org.apache.commons.math3.genetics</a></dt>
<dd>
<div class="block">Algorithm used to select a chromosome pair from a population.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/events/FilterType.html#selectTransformer(org.apache.commons.math3.ode.events.Transformer, double, boolean)">selectTransformer(Transformer, double, boolean)</a></span> - Method in enum org.apache.commons.math3.ode.events.<a href="./org/apache/commons/math3/ode/events/FilterType.html" title="enum in org.apache.commons.math3.ode.events">FilterType</a></dt>
<dd>
<div class="block">Get next function transformer in the specified direction.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html" title="class in org.apache.commons.math3.stat.descriptive.moment"><span class="strong">SemiVariance</span></a> - Class in <a href="./org/apache/commons/math3/stat/descriptive/moment/package-summary.html">org.apache.commons.math3.stat.descriptive.moment</a></dt>
<dd>
<div class="block">Computes the semivariance of a set of values with respect to a given cutoff value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html#SemiVariance()">SemiVariance()</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">SemiVariance</a></dt>
<dd>
<div class="block">Constructs a SemiVariance with default (true) <code>biasCorrected</code>
 property and default (Downside) <code>varianceDirection</code> property.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html#SemiVariance(boolean)">SemiVariance(boolean)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">SemiVariance</a></dt>
<dd>
<div class="block">Constructs a SemiVariance with the specified <code>biasCorrected</code>
 property and default (Downside) <code>varianceDirection</code> property.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html#SemiVariance(org.apache.commons.math3.stat.descriptive.moment.SemiVariance.Direction)">SemiVariance(SemiVariance.Direction)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">SemiVariance</a></dt>
<dd>
<div class="block">Constructs a SemiVariance with the specified <code>Direction</code> property
 and default (true) <code>biasCorrected</code> property</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html#SemiVariance(boolean, org.apache.commons.math3.stat.descriptive.moment.SemiVariance.Direction)">SemiVariance(boolean, SemiVariance.Direction)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">SemiVariance</a></dt>
<dd>
<div class="block">Constructs a SemiVariance with the specified <code>isBiasCorrected</code>
 property and the specified <code>Direction</code> property.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html#SemiVariance(org.apache.commons.math3.stat.descriptive.moment.SemiVariance)">SemiVariance(SemiVariance)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">SemiVariance</a></dt>
<dd>
<div class="block">Copy constructor, creates a new <code>SemiVariance</code> identical
 to the <code>original</code></div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.Direction.html" title="enum in org.apache.commons.math3.stat.descriptive.moment"><span class="strong">SemiVariance.Direction</span></a> - Enum in <a href="./org/apache/commons/math3/stat/descriptive/moment/package-summary.html">org.apache.commons.math3.stat.descriptive.moment</a></dt>
<dd>
<div class="block">The direction of the semivariance - either upside or downside.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#serializeRealMatrix(org.apache.commons.math3.linear.RealMatrix, java.io.ObjectOutputStream)">serializeRealMatrix(RealMatrix, ObjectOutputStream)</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Serialize a <a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear"><code>RealMatrix</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#serializeRealVector(org.apache.commons.math3.linear.RealVector, java.io.ObjectOutputStream)">serializeRealVector(RealVector, ObjectOutputStream)</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Serialize a <a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear"><code>RealVector</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#set(int, org.apache.commons.math3.linear.ArrayFieldVector)">set(int, ArrayFieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Set a set of consecutive elements.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#set(T)">set(T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Set all elements to a single value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#set(double)">set(double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Set all elements to a single value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVector.html#set(T)">set(T)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVector.html" title="interface in org.apache.commons.math3.linear">FieldVector</a></dt>
<dd>
<div class="block">Set all elements to a single value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#set(double)">set(double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Set all elements to a single value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#set(double)">set(double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Set all elements to a single value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#set(T)">set(T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Set all elements to a single value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#setAngle(double)">setAngle(double)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Line</a></dt>
<dd>
<div class="block">Set the angle of the line.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/TournamentSelection.html#setArity(int)">setArity(int)</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/TournamentSelection.html" title="class in org.apache.commons.math3.genetics">TournamentSelection</a></dt>
<dd>
<div class="block">Sets the arity (number of chromosomes drawn to the tournament).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html#setAttribute(java.lang.Object)">setAttribute(Object)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html" title="class in org.apache.commons.math3.geometry.partitioning">BSPTree</a></dt>
<dd>
<div class="block">Associate an attribute with the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html#setBarycenter(org.apache.commons.math3.geometry.Vector)">setBarycenter(Vector&lt;S&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractRegion</a></dt>
<dd>
<div class="block">Set the barycenter of the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html#setBarycenter(org.apache.commons.math3.geometry.Point)">setBarycenter(Point&lt;S&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractRegion</a></dt>
<dd>
<div class="block">Set the barycenter of the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html#setBiasCorrected(boolean)">setBiasCorrected(boolean)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">SemiVariance</a></dt>
<dd>
<div class="block">Sets the biasCorrected property.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html#setBiasCorrected(boolean)">setBiasCorrected(boolean)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html" title="class in org.apache.commons.math3.stat.descriptive.moment">StandardDeviation</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html#setBiasCorrected(boolean)">setBiasCorrected(boolean)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Variance</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/ListPopulation.html#setChromosomes(java.util.List)">setChromosomes(List&lt;Chromosome&gt;)</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/ListPopulation.html" title="class in org.apache.commons.math3.genetics">ListPopulation</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>use <a href="./org/apache/commons/math3/genetics/ListPopulation.html#addChromosomes(java.util.Collection)"><code>ListPopulation.addChromosomes(Collection)</code></a> instead</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#setColumn(int, T[])">setColumn(int, T[])</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Set the entries in column number <code>column</code>
 as a column matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#setColumn(int, double[])">setColumn(int, double[])</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Sets the specified <code>column</code> of <code>this</code> matrix to the entries
 of the specified <code>array</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#setColumn(int, T[])">setColumn(int, T[])</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Set the entries in column number <code>column</code>
 as a column matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#setColumn(int, double[])">setColumn(int, double[])</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Sets the specified <code>column</code> of <code>this</code> matrix to the entries
 of the specified <code>array</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#setColumn(int, T[])">setColumn(int, T[])</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Set the entries in column number <code>column</code>
 as a column matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#setColumn(int, double[])">setColumn(int, double[])</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Sets the specified <code>column</code> of <code>this</code> matrix to the entries
 of the specified <code>array</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#setColumnMatrix(int, org.apache.commons.math3.linear.FieldMatrix)">setColumnMatrix(int, FieldMatrix&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Set the entries in column number <code>column</code>
 as a column matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#setColumnMatrix(int, org.apache.commons.math3.linear.RealMatrix)">setColumnMatrix(int, RealMatrix)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Sets the specified <code>column</code> of <code>this</code> matrix to the entries
 of the specified column <code>matrix</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#setColumnMatrix(int, org.apache.commons.math3.linear.FieldMatrix)">setColumnMatrix(int, FieldMatrix&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Set the entries in column number <code>column</code>
 as a column matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#setColumnMatrix(int, org.apache.commons.math3.linear.RealMatrix)">setColumnMatrix(int, RealMatrix)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Sets the specified <code>column</code> of <code>this</code> matrix to the entries
 of the specified column <code>matrix</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#setColumnMatrix(int, org.apache.commons.math3.linear.FieldMatrix)">setColumnMatrix(int, FieldMatrix&lt;T&gt;)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Set the entries in column number <code>column</code>
 as a column matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#setColumnMatrix(int, org.apache.commons.math3.linear.RealMatrix)">setColumnMatrix(int, RealMatrix)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Sets the specified <code>column</code> of <code>this</code> matrix to the entries
 of the specified column <code>matrix</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#setColumnVector(int, org.apache.commons.math3.linear.FieldVector)">setColumnVector(int, FieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Set the entries in column number <code>column</code>
 as a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#setColumnVector(int, org.apache.commons.math3.linear.RealVector)">setColumnVector(int, RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Sets the specified <code>column</code> of <code>this</code> matrix to the entries
 of the specified <code>vector</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#setColumnVector(int, org.apache.commons.math3.linear.FieldVector)">setColumnVector(int, FieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Set the entries in column number <code>column</code>
 as a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#setColumnVector(int, org.apache.commons.math3.linear.RealVector)">setColumnVector(int, RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Sets the specified <code>column</code> of <code>this</code> matrix to the entries
 of the specified <code>vector</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#setColumnVector(int, org.apache.commons.math3.linear.FieldVector)">setColumnVector(int, FieldVector&lt;T&gt;)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Set the entries in column number <code>column</code>
 as a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#setColumnVector(int, org.apache.commons.math3.linear.RealVector)">setColumnVector(int, RealVector)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Sets the specified <code>column</code> of <code>this</code> matrix to the entries
 of the specified <code>vector</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html#setCompleteState(double[])">setCompleteState(double[])</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html" title="class in org.apache.commons.math3.ode">ExpandableStatefulODE</a></dt>
<dd>
<div class="block">Set the complete current state.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#setContractionCriteria(float)">setContractionCriteria(float)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0 as field will become "final").</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/GraggBulirschStoerIntegrator.html#setControlFactors(double, double, double, double)">setControlFactors(double, double, double, double)</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/GraggBulirschStoerIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">GraggBulirschStoerIntegrator</a></dt>
<dd>
<div class="block">Set the step size control factors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/AbstractLeastSquaresOptimizer.html#setCost(double)">setCost(double)</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.vector.jacobian.<a href="./org/apache/commons/math3/optim/nonlinear/vector/jacobian/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector.jacobian">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Sets the cost.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#setCost(double)">setCost(double)</a></span> - Method in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Sets the cost.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AbstractUnivariateStatistic.html#setData(double[])">setData(double[])</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AbstractUnivariateStatistic.html" title="class in org.apache.commons.math3.stat.descriptive">AbstractUnivariateStatistic</a></dt>
<dd>
<div class="block">Set the data array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AbstractUnivariateStatistic.html#setData(double[], int, int)">setData(double[], int, int)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AbstractUnivariateStatistic.html" title="class in org.apache.commons.math3.stat.descriptive">AbstractUnivariateStatistic</a></dt>
<dd>
<div class="block">Set the data array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/rank/Percentile.html#setData(double[])">setData(double[])</a></span> - Method in class org.apache.commons.math3.stat.descriptive.rank.<a href="./org/apache/commons/math3/stat/descriptive/rank/Percentile.html" title="class in org.apache.commons.math3.stat.descriptive.rank">Percentile</a></dt>
<dd>
<div class="block">Set the data array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/rank/Percentile.html#setData(double[], int, int)">setData(double[], int, int)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.rank.<a href="./org/apache/commons/math3/stat/descriptive/rank/Percentile.html" title="class in org.apache.commons.math3.stat.descriptive.rank">Percentile</a></dt>
<dd>
<div class="block">Set the data array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/AbstractFormat.html#setDenominatorFormat(java.text.NumberFormat)">setDenominatorFormat(NumberFormat)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/AbstractFormat.html" title="class in org.apache.commons.math3.fraction">AbstractFormat</a></dt>
<dd>
<div class="block">Modify the denominator format.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/DoubleArray.html#setElement(int, double)">setElement(int, double)</a></span> - Method in interface org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/DoubleArray.html" title="interface in org.apache.commons.math3.util">DoubleArray</a></dt>
<dd>
<div class="block">Sets the element at the specified index.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#setElement(int, double)">setElement(int, double)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block">Sets the element at the specified index.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/ElitisticListPopulation.html#setElitismRate(double)">setElitismRate(double)</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/ElitisticListPopulation.html" title="class in org.apache.commons.math3.genetics">ElitisticListPopulation</a></dt>
<dd>
<div class="block">Sets the elitism rate, i.e.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#setEntry(int, int, T)">setEntry(int, int, T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Set the entry in the specified row and column.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#setEntry(int, int, double)">setEntry(int, int, double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Set the entry in the specified row and column.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html#setEntry(int, int, T)">setEntry(int, int, T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowFieldMatrix</a></dt>
<dd>
<div class="block">Set the entry in the specified row and column.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html#setEntry(int, int, double)">setEntry(int, int, double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowRealMatrix</a></dt>
<dd>
<div class="block">Set the entry in the specified row and column.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#setEntry(int, T)">setEntry(int, T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Set a single element.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#setEntry(int, double)">setEntry(int, double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Set a single element.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#setEntry(int, int, T)">setEntry(int, int, T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Set the entry in the specified row and column.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#setEntry(int, int, double)">setEntry(int, int, double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Set the entry in the specified row and column.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DiagonalMatrix.html#setEntry(int, int, double)">setEntry(int, int, double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DiagonalMatrix.html" title="class in org.apache.commons.math3.linear">DiagonalMatrix</a></dt>
<dd>
<div class="block">Set the entry in the specified row and column.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#setEntry(int, int, T)">setEntry(int, int, T)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Set the entry in the specified row and column.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVector.html#setEntry(int, T)">setEntry(int, T)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVector.html" title="interface in org.apache.commons.math3.linear">FieldVector</a></dt>
<dd>
<div class="block">Set a single element.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealMatrix.html#setEntry(int, int, double)">setEntry(int, int, double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealMatrix.html" title="class in org.apache.commons.math3.linear">OpenMapRealMatrix</a></dt>
<dd>
<div class="block">Set the entry in the specified row and column.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#setEntry(int, double)">setEntry(int, double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Set a single element.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#setEntry(int, int, double)">setEntry(int, int, double)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Set the entry in the specified row and column.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#setEntry(int, double)">setEntry(int, double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Set a single element.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldMatrix.html#setEntry(int, int, T)">setEntry(int, int, T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldMatrix.html" title="class in org.apache.commons.math3.linear">SparseFieldMatrix</a></dt>
<dd>
<div class="block">Set the entry in the specified row and column.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#setEntry(int, T)">setEntry(int, T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Set a single element.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractIntegrator.html#setEquations(org.apache.commons.math3.ode.ExpandableStatefulODE)">setEquations(ExpandableStatefulODE)</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractIntegrator.html" title="class in org.apache.commons.math3.ode">AbstractIntegrator</a></dt>
<dd>
<div class="block">Set the equations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/events/EventState.html#setExpandable(org.apache.commons.math3.ode.ExpandableStatefulODE)">setExpandable(ExpandableStatefulODE)</a></span> - Method in class org.apache.commons.math3.ode.events.<a href="./org/apache/commons/math3/ode/events/EventState.html" title="class in org.apache.commons.math3.ode.events">EventState</a></dt>
<dd>
<div class="block">Set the equation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#setExpansionFactor(float)">setExpansionFactor(float)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0 as field will become "final").</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#setExpansionMode(int)">setExpansionMode(int)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1. Please use <a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#setExpansionMode(org.apache.commons.math3.util.ResizableDoubleArray.ExpansionMode)"><code>ResizableDoubleArray.setExpansionMode(ExpansionMode)</code></a> instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#setExpansionMode(org.apache.commons.math3.util.ResizableDoubleArray.ExpansionMode)">setExpansionMode(ResizableDoubleArray.ExpansionMode)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0 as field will become "final").</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#setGeoMeanImpl(org.apache.commons.math3.stat.descriptive.StorelessUnivariateStatistic[])">setGeoMeanImpl(StorelessUnivariateStatistic[])</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">MultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Sets the implementation for the geometric mean.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#setGeoMeanImpl(org.apache.commons.math3.stat.descriptive.StorelessUnivariateStatistic)">setGeoMeanImpl(StorelessUnivariateStatistic)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">
 Sets the implementation for the geometric mean.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html#setGeoMeanImpl(org.apache.commons.math3.stat.descriptive.StorelessUnivariateStatistic[])">setGeoMeanImpl(StorelessUnivariateStatistic[])</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedMultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Sets the implementation for the geometric mean.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#setGeoMeanImpl(org.apache.commons.math3.stat.descriptive.StorelessUnivariateStatistic)">setGeoMeanImpl(StorelessUnivariateStatistic)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">
 Sets the implementation for the geometric mean.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#setGeometricMeanImpl(org.apache.commons.math3.stat.descriptive.UnivariateStatistic)">setGeometricMeanImpl(UnivariateStatistic)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Sets the implementation for the gemoetric mean.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#setIEEEFlags(int)">setIEEEFlags(int)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Sets the IEEE 854 status flags.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#setIEEEFlagsBits(int)">setIEEEFlagsBits(int)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Sets some bits in the IEEE 854 status flags, without changing the already set bits.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.Entry.html#setIndex(int)">setIndex(int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.Entry.html" title="class in org.apache.commons.math3.linear">RealVector.Entry</a></dt>
<dd>
<div class="block">Set the index of the entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#setInitialCapacity(int)">setInitialCapacity(int)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1, this is a no-op.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/JacobianMatrices.html#setInitialMainStateJacobian(double[][])">setInitialMainStateJacobian(double[][])</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/JacobianMatrices.html" title="class in org.apache.commons.math3.ode">JacobianMatrices</a></dt>
<dd>
<div class="block">Set the initial value of the Jacobian matrix with respect to state.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/JacobianMatrices.html#setInitialParameterJacobian(java.lang.String, double[])">setInitialParameterJacobian(String, double[])</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/JacobianMatrices.html" title="class in org.apache.commons.math3.ode">JacobianMatrices</a></dt>
<dd>
<div class="block">Set the initial value of a column of the Jacobian matrix with respect to one parameter.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/NonLinearConjugateGradientOptimizer.html#setInitialStep(double)">setInitialStep(double)</a></span> - Method in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/NonLinearConjugateGradientOptimizer.html" title="class in org.apache.commons.math3.optimization.general">NonLinearConjugateGradientOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Set the initial step used to bracket the optimum in line search.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html#setInitialStepSize(double)">setInitialStepSize(double)</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">AdaptiveStepsizeIntegrator</a></dt>
<dd>
<div class="block">Set the initial step size.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ContinuousOutputModel.html#setInterpolatedTime(double)">setInterpolatedTime(double)</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ContinuousOutputModel.html" title="class in org.apache.commons.math3.ode">ContinuousOutputModel</a></dt>
<dd>
<div class="block">Set the time of the interpolated point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#setInterpolatedTime(double)">setInterpolatedTime(double)</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">Set the time of the interpolated point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/StepInterpolator.html#setInterpolatedTime(double)">setInterpolatedTime(double)</a></span> - Method in interface org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/StepInterpolator.html" title="interface in org.apache.commons.math3.ode.sampling">StepInterpolator</a></dt>
<dd>
<div class="block">Set the time of the interpolated point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/GraggBulirschStoerIntegrator.html#setInterpolationControl(boolean, int)">setInterpolationControl(boolean, int)</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/GraggBulirschStoerIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">GraggBulirschStoerIntegrator</a></dt>
<dd>
<div class="block">Set the interpolation order control parameter.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#setKurtosisImpl(org.apache.commons.math3.stat.descriptive.UnivariateStatistic)">setKurtosisImpl(UnivariateStatistic)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Sets the implementation for the kurtosis.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractIntegrator.html#setMaxEvaluations(int)">setMaxEvaluations(int)</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractIntegrator.html" title="class in org.apache.commons.math3.ode">AbstractIntegrator</a></dt>
<dd>
<div class="block">Set the maximal number of differential equations function evaluations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ODEIntegrator.html#setMaxEvaluations(int)">setMaxEvaluations(int)</a></span> - Method in interface org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ODEIntegrator.html" title="interface in org.apache.commons.math3.ode">ODEIntegrator</a></dt>
<dd>
<div class="block">Set the maximal number of differential equations function evaluations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/MultistepIntegrator.html#setMaxGrowth(double)">setMaxGrowth(double)</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/MultistepIntegrator.html" title="class in org.apache.commons.math3.ode">MultistepIntegrator</a></dt>
<dd>
<div class="block">Set the maximal growth factor for stepsize control.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/EmbeddedRungeKuttaIntegrator.html#setMaxGrowth(double)">setMaxGrowth(double)</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/EmbeddedRungeKuttaIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">EmbeddedRungeKuttaIntegrator</a></dt>
<dd>
<div class="block">Set the maximal growth factor for stepsize control.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Incrementor.html#setMaximalCount(int)">setMaximalCount(int)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Incrementor.html" title="class in org.apache.commons.math3.util">Incrementor</a></dt>
<dd>
<div class="block">Sets the upper limit for the counter.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#setMaxImpl(org.apache.commons.math3.stat.descriptive.UnivariateStatistic)">setMaxImpl(UnivariateStatistic)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Sets the implementation for the maximum.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#setMaxImpl(org.apache.commons.math3.stat.descriptive.StorelessUnivariateStatistic[])">setMaxImpl(StorelessUnivariateStatistic[])</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">MultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Sets the implementation for the maximum.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#setMaxImpl(org.apache.commons.math3.stat.descriptive.StorelessUnivariateStatistic)">setMaxImpl(StorelessUnivariateStatistic)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">
 Sets the implementation for the maximum.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html#setMaxImpl(org.apache.commons.math3.stat.descriptive.StorelessUnivariateStatistic[])">setMaxImpl(StorelessUnivariateStatistic[])</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedMultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Sets the implementation for the maximum.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#setMaxImpl(org.apache.commons.math3.stat.descriptive.StorelessUnivariateStatistic)">setMaxImpl(StorelessUnivariateStatistic)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">
 Sets the implementation for the maximum.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/AbstractLinearOptimizer.html#setMaxIterations(int)">setMaxIterations(int)</a></span> - Method in class org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/AbstractLinearOptimizer.html" title="class in org.apache.commons.math3.optimization.linear">AbstractLinearOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Set the maximal number of iterations of the algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/LinearOptimizer.html#setMaxIterations(int)">setMaxIterations(int)</a></span> - Method in interface org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/LinearOptimizer.html" title="interface in org.apache.commons.math3.optimization.linear">LinearOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Set the maximal number of iterations of the algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#setMeanImpl(org.apache.commons.math3.stat.descriptive.UnivariateStatistic)">setMeanImpl(UnivariateStatistic)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Sets the implementation for the mean.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#setMeanImpl(org.apache.commons.math3.stat.descriptive.StorelessUnivariateStatistic[])">setMeanImpl(StorelessUnivariateStatistic[])</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">MultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Sets the implementation for the mean.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#setMeanImpl(org.apache.commons.math3.stat.descriptive.StorelessUnivariateStatistic)">setMeanImpl(StorelessUnivariateStatistic)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">
 Sets the implementation for the mean.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html#setMeanImpl(org.apache.commons.math3.stat.descriptive.StorelessUnivariateStatistic[])">setMeanImpl(StorelessUnivariateStatistic[])</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedMultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Sets the implementation for the mean.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#setMeanImpl(org.apache.commons.math3.stat.descriptive.StorelessUnivariateStatistic)">setMeanImpl(StorelessUnivariateStatistic)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">
 Sets the implementation for the mean.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#setMinImpl(org.apache.commons.math3.stat.descriptive.UnivariateStatistic)">setMinImpl(UnivariateStatistic)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Sets the implementation for the minimum.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#setMinImpl(org.apache.commons.math3.stat.descriptive.StorelessUnivariateStatistic[])">setMinImpl(StorelessUnivariateStatistic[])</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">MultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Sets the implementation for the minimum.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#setMinImpl(org.apache.commons.math3.stat.descriptive.StorelessUnivariateStatistic)">setMinImpl(StorelessUnivariateStatistic)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">
 Sets the implementation for the minimum.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html#setMinImpl(org.apache.commons.math3.stat.descriptive.StorelessUnivariateStatistic[])">setMinImpl(StorelessUnivariateStatistic[])</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedMultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Sets the implementation for the minimum.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#setMinImpl(org.apache.commons.math3.stat.descriptive.StorelessUnivariateStatistic)">setMinImpl(StorelessUnivariateStatistic)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">
 Sets the implementation for the minimum.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/MultistepIntegrator.html#setMinReduction(double)">setMinReduction(double)</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/MultistepIntegrator.html" title="class in org.apache.commons.math3.ode">MultistepIntegrator</a></dt>
<dd>
<div class="block">Set the minimal reduction factor for stepsize control.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/EmbeddedRungeKuttaIntegrator.html#setMinReduction(double)">setMinReduction(double)</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/EmbeddedRungeKuttaIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">EmbeddedRungeKuttaIntegrator</a></dt>
<dd>
<div class="block">Set the minimal reduction factor for stepsize control.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/ValueServer.html#setMode(int)">setMode(int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/ValueServer.html" title="class in org.apache.commons.math3.random">ValueServer</a></dt>
<dd>
<div class="block">Sets the data generation mode.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/ValueServer.html#setMu(double)">setMu(double)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/ValueServer.html" title="class in org.apache.commons.math3.random">ValueServer</a></dt>
<dd>
<div class="block">Sets the <a href="./org/apache/commons/math3/random/ValueServer.html#getMu()"><code>mean</code></a> used in data generation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html#setNoIntercept(boolean)">setNoIntercept(boolean)</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">AbstractMultipleLinearRegression</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#setNumElements(int)">setNumElements(int)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block">This function allows you to control the number of elements contained
 in this array, and can be used to "throw out" the last n values in an
 array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/AbstractFormat.html#setNumeratorFormat(java.text.NumberFormat)">setNumeratorFormat(NumberFormat)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/AbstractFormat.html" title="class in org.apache.commons.math3.fraction">AbstractFormat</a></dt>
<dd>
<div class="block">Modify the numerator format.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/GraggBulirschStoerIntegrator.html#setOrderControl(int, double, double)">setOrderControl(int, double, double)</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/GraggBulirschStoerIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">GraggBulirschStoerIntegrator</a></dt>
<dd>
<div class="block">Set the order control parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#setOriginOffset(double)">setOriginOffset(double)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Line</a></dt>
<dd>
<div class="block">Set the offset of the origin.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ParameterizedODE.html#setParameter(java.lang.String, double)">setParameter(String, double)</a></span> - Method in interface org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ParameterizedODE.html" title="interface in org.apache.commons.math3.ode">ParameterizedODE</a></dt>
<dd>
<div class="block">Set the value for a given parameter.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/JacobianMatrices.html#setParameterizedODE(org.apache.commons.math3.ode.ParameterizedODE)">setParameterizedODE(ParameterizedODE)</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/JacobianMatrices.html" title="class in org.apache.commons.math3.ode">JacobianMatrices</a></dt>
<dd>
<div class="block">Set a parameter Jacobian provider.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/JacobianMatrices.html#setParameterStep(java.lang.String, double)">setParameterStep(String, double)</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/JacobianMatrices.html" title="class in org.apache.commons.math3.ode">JacobianMatrices</a></dt>
<dd>
<div class="block">Set the step associated to a parameter in order to compute by finite
  difference the Jacobian matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#setPercentileImpl(org.apache.commons.math3.stat.descriptive.UnivariateStatistic)">setPercentileImpl(UnivariateStatistic)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Sets the implementation to be used by <a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getPercentile(double)"><code>DescriptiveStatistics.getPercentile(double)</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/AbstractSimplex.html#setPoint(int, org.apache.commons.math3.optim.PointValuePair)">setPoint(int, PointValuePair)</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/AbstractSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">AbstractSimplex</a></dt>
<dd>
<div class="block">Store a new point at location <code>index</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/AbstractSimplex.html#setPoint(int, org.apache.commons.math3.optimization.PointValuePair)">setPoint(int, PointValuePair)</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/AbstractSimplex.html" title="class in org.apache.commons.math3.optimization.direct">AbstractSimplex</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Store a new point at location <code>index</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/AbstractSimplex.html#setPoints(org.apache.commons.math3.optim.PointValuePair[])">setPoints(PointValuePair[])</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/AbstractSimplex.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">AbstractSimplex</a></dt>
<dd>
<div class="block">Replace all points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/AbstractSimplex.html#setPoints(org.apache.commons.math3.optimization.PointValuePair[])">setPoints(PointValuePair[])</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/AbstractSimplex.html" title="class in org.apache.commons.math3.optimization.direct">AbstractSimplex</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Replace all points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/ListPopulation.html#setPopulationLimit(int)">setPopulationLimit(int)</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/ListPopulation.html" title="class in org.apache.commons.math3.genetics">ListPopulation</a></dt>
<dd>
<div class="block">Sets the maximal population size.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html#setPrimaryState(double[])">setPrimaryState(double[])</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html" title="class in org.apache.commons.math3.ode">ExpandableStatefulODE</a></dt>
<dd>
<div class="block">Set primary part of the current state.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/rank/Percentile.html#setQuantile(double)">setQuantile(double)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.rank.<a href="./org/apache/commons/math3/stat/descriptive/rank/Percentile.html" title="class in org.apache.commons.math3.stat.descriptive.rank">Percentile</a></dt>
<dd>
<div class="block">Sets the value of the quantile field (determines what percentile is
 computed when evaluate() is called with no quantile argument).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/GeneticAlgorithm.html#setRandomGenerator(org.apache.commons.math3.random.RandomGenerator)">setRandomGenerator(RandomGenerator)</a></span> - Static method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/GeneticAlgorithm.html" title="class in org.apache.commons.math3.genetics">GeneticAlgorithm</a></dt>
<dd>
<div class="block">Set the (static) random generator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.html#setRoundingMode(org.apache.commons.math3.dfp.DfpField.RoundingMode)">setRoundingMode(DfpField.RoundingMode)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.html" title="class in org.apache.commons.math3.dfp">DfpField</a></dt>
<dd>
<div class="block">Set the rounding mode.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#setRoundingMode(java.math.RoundingMode)">setRoundingMode(RoundingMode)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dd>
<div class="block">Sets the rounding mode for decimal divisions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#setRow(int, T[])">setRow(int, T[])</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Set the entries in row number <code>row</code>
 as a row matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#setRow(int, double[])">setRow(int, double[])</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Sets the specified <code>row</code> of <code>this</code> matrix to the entries
 of the specified <code>array</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#setRow(int, T[])">setRow(int, T[])</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Set the entries in row number <code>row</code>
 as a row matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#setRow(int, double[])">setRow(int, double[])</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Sets the specified <code>row</code> of <code>this</code> matrix to the entries
 of the specified <code>array</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#setRow(int, T[])">setRow(int, T[])</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Set the entries in row number <code>row</code>
 as a row matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#setRow(int, double[])">setRow(int, double[])</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Sets the specified <code>row</code> of <code>this</code> matrix to the entries
 of the specified <code>array</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#setRowMatrix(int, org.apache.commons.math3.linear.FieldMatrix)">setRowMatrix(int, FieldMatrix&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Set the entries in row number <code>row</code>
 as a row matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#setRowMatrix(int, org.apache.commons.math3.linear.RealMatrix)">setRowMatrix(int, RealMatrix)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Sets the specified <code>row</code> of <code>this</code> matrix to the entries of
 the specified row <code>matrix</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#setRowMatrix(int, org.apache.commons.math3.linear.FieldMatrix)">setRowMatrix(int, FieldMatrix&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Set the entries in row number <code>row</code>
 as a row matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#setRowMatrix(int, org.apache.commons.math3.linear.BlockFieldMatrix)">setRowMatrix(int, BlockFieldMatrix&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Sets the entries in row number <code>row</code>
 as a row matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#setRowMatrix(int, org.apache.commons.math3.linear.RealMatrix)">setRowMatrix(int, RealMatrix)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Sets the specified <code>row</code> of <code>this</code> matrix to the entries of
 the specified row <code>matrix</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#setRowMatrix(int, org.apache.commons.math3.linear.BlockRealMatrix)">setRowMatrix(int, BlockRealMatrix)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Sets the entries in row number <code>row</code>
 as a row matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#setRowMatrix(int, org.apache.commons.math3.linear.FieldMatrix)">setRowMatrix(int, FieldMatrix&lt;T&gt;)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Set the entries in row number <code>row</code>
 as a row matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#setRowMatrix(int, org.apache.commons.math3.linear.RealMatrix)">setRowMatrix(int, RealMatrix)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Sets the specified <code>row</code> of <code>this</code> matrix to the entries of
 the specified row <code>matrix</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#setRowVector(int, org.apache.commons.math3.linear.FieldVector)">setRowVector(int, FieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Set the entries in row number <code>row</code>
 as a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#setRowVector(int, org.apache.commons.math3.linear.RealVector)">setRowVector(int, RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Sets the specified <code>row</code> of <code>this</code> matrix to the entries of
 the specified <code>vector</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#setRowVector(int, org.apache.commons.math3.linear.FieldVector)">setRowVector(int, FieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Set the entries in row number <code>row</code>
 as a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#setRowVector(int, org.apache.commons.math3.linear.RealVector)">setRowVector(int, RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Sets the specified <code>row</code> of <code>this</code> matrix to the entries of
 the specified <code>vector</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#setRowVector(int, org.apache.commons.math3.linear.FieldVector)">setRowVector(int, FieldVector&lt;T&gt;)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Set the entries in row number <code>row</code>
 as a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#setRowVector(int, org.apache.commons.math3.linear.RealVector)">setRowVector(int, RealVector)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Sets the specified <code>row</code> of <code>this</code> matrix to the entries of
 the specified <code>vector</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/MultistepIntegrator.html#setSafety(double)">setSafety(double)</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/MultistepIntegrator.html" title="class in org.apache.commons.math3.ode">MultistepIntegrator</a></dt>
<dd>
<div class="block">Set the safety factor for stepsize control.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/EmbeddedRungeKuttaIntegrator.html#setSafety(double)">setSafety(double)</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/EmbeddedRungeKuttaIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">EmbeddedRungeKuttaIntegrator</a></dt>
<dd>
<div class="block">Set the safety factor for stepsize control.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#setScale(int)">setScale(int)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dd>
<div class="block">Sets the scale for division operations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html#setSecondaryState(int, double[])">setSecondaryState(int, double[])</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html" title="class in org.apache.commons.math3.ode">ExpandableStatefulODE</a></dt>
<dd>
<div class="block">Set secondary part of the current state.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataGenerator.html#setSecureAlgorithm(java.lang.String, java.lang.String)">setSecureAlgorithm(String, String)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataGenerator.html" title="class in org.apache.commons.math3.random">RandomDataGenerator</a></dt>
<dd>
<div class="block">Sets the PRNG algorithm for the underlying SecureRandom instance using
 the Security Provider API.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomDataImpl.html#setSecureAlgorithm(java.lang.String, java.lang.String)">setSecureAlgorithm(String, String)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomDataImpl.html" title="class in org.apache.commons.math3.random">RandomDataImpl</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Sets the PRNG algorithm for the underlying SecureRandom instance using
 the Security Provider API.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/AbstractRandomGenerator.html#setSeed(int)">setSeed(int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/AbstractRandomGenerator.html" title="class in org.apache.commons.math3.random">AbstractRandomGenerator</a></dt>
<dd>
<div class="block">Sets the seed of the underlying random number generator using an
 <code>int</code> seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/AbstractRandomGenerator.html#setSeed(int[])">setSeed(int[])</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/AbstractRandomGenerator.html" title="class in org.apache.commons.math3.random">AbstractRandomGenerator</a></dt>
<dd>
<div class="block">Sets the seed of the underlying random number generator using an
 <code>int</code> array seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/AbstractRandomGenerator.html#setSeed(long)">setSeed(long)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/AbstractRandomGenerator.html" title="class in org.apache.commons.math3.random">AbstractRandomGenerator</a></dt>
<dd>
<div class="block">Sets the seed of the underlying random number generator using a
 <code>long</code> seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/AbstractWell.html#setSeed(int)">setSeed(int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/AbstractWell.html" title="class in org.apache.commons.math3.random">AbstractWell</a></dt>
<dd>
<div class="block">Reinitialize the generator as if just built with the given int seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/AbstractWell.html#setSeed(int[])">setSeed(int[])</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/AbstractWell.html" title="class in org.apache.commons.math3.random">AbstractWell</a></dt>
<dd>
<div class="block">Reinitialize the generator as if just built with the given int array seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/AbstractWell.html#setSeed(long)">setSeed(long)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/AbstractWell.html" title="class in org.apache.commons.math3.random">AbstractWell</a></dt>
<dd>
<div class="block">Reinitialize the generator as if just built with the given long seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/BitsStreamGenerator.html#setSeed(int)">setSeed(int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/BitsStreamGenerator.html" title="class in org.apache.commons.math3.random">BitsStreamGenerator</a></dt>
<dd>
<div class="block">Sets the seed of the underlying random number generator using an
 <code>int</code> seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/BitsStreamGenerator.html#setSeed(int[])">setSeed(int[])</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/BitsStreamGenerator.html" title="class in org.apache.commons.math3.random">BitsStreamGenerator</a></dt>
<dd>
<div class="block">Sets the seed of the underlying random number generator using an
 <code>int</code> array seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/BitsStreamGenerator.html#setSeed(long)">setSeed(long)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/BitsStreamGenerator.html" title="class in org.apache.commons.math3.random">BitsStreamGenerator</a></dt>
<dd>
<div class="block">Sets the seed of the underlying random number generator using a
 <code>long</code> seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/ISAACRandom.html#setSeed(int)">setSeed(int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/ISAACRandom.html" title="class in org.apache.commons.math3.random">ISAACRandom</a></dt>
<dd>
<div class="block">Sets the seed of the underlying random number generator using an
 <code>int</code> seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/ISAACRandom.html#setSeed(long)">setSeed(long)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/ISAACRandom.html" title="class in org.apache.commons.math3.random">ISAACRandom</a></dt>
<dd>
<div class="block">Sets the seed of the underlying random number generator using a
 <code>long</code> seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/ISAACRandom.html#setSeed(int[])">setSeed(int[])</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/ISAACRandom.html" title="class in org.apache.commons.math3.random">ISAACRandom</a></dt>
<dd>
<div class="block">Sets the seed of the underlying random number generator using an
 <code>int</code> array seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/JDKRandomGenerator.html#setSeed(int)">setSeed(int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/JDKRandomGenerator.html" title="class in org.apache.commons.math3.random">JDKRandomGenerator</a></dt>
<dd>
<div class="block">Sets the seed of the underlying random number generator using an
 <code>int</code> seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/JDKRandomGenerator.html#setSeed(int[])">setSeed(int[])</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/JDKRandomGenerator.html" title="class in org.apache.commons.math3.random">JDKRandomGenerator</a></dt>
<dd>
<div class="block">Sets the seed of the underlying random number generator using an
 <code>int</code> array seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/MersenneTwister.html#setSeed(int)">setSeed(int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/MersenneTwister.html" title="class in org.apache.commons.math3.random">MersenneTwister</a></dt>
<dd>
<div class="block">Reinitialize the generator as if just built with the given int seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/MersenneTwister.html#setSeed(int[])">setSeed(int[])</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/MersenneTwister.html" title="class in org.apache.commons.math3.random">MersenneTwister</a></dt>
<dd>
<div class="block">Reinitialize the generator as if just built with the given int array seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/MersenneTwister.html#setSeed(long)">setSeed(long)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/MersenneTwister.html" title="class in org.apache.commons.math3.random">MersenneTwister</a></dt>
<dd>
<div class="block">Reinitialize the generator as if just built with the given long seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomAdaptor.html#setSeed(int)">setSeed(int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomAdaptor.html" title="class in org.apache.commons.math3.random">RandomAdaptor</a></dt>
<dd>
<div class="block">Sets the seed of the underlying random number generator using an
 <code>int</code> seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomAdaptor.html#setSeed(int[])">setSeed(int[])</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomAdaptor.html" title="class in org.apache.commons.math3.random">RandomAdaptor</a></dt>
<dd>
<div class="block">Sets the seed of the underlying random number generator using an
 <code>int</code> array seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomAdaptor.html#setSeed(long)">setSeed(long)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomAdaptor.html" title="class in org.apache.commons.math3.random">RandomAdaptor</a></dt>
<dd>
<div class="block">Sets the seed of the underlying random number generator using a
 <code>long</code> seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomGenerator.html#setSeed(int)">setSeed(int)</a></span> - Method in interface org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random">RandomGenerator</a></dt>
<dd>
<div class="block">Sets the seed of the underlying random number generator using an
 <code>int</code> seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomGenerator.html#setSeed(int[])">setSeed(int[])</a></span> - Method in interface org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random">RandomGenerator</a></dt>
<dd>
<div class="block">Sets the seed of the underlying random number generator using an
 <code>int</code> array seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/RandomGenerator.html#setSeed(long)">setSeed(long)</a></span> - Method in interface org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random">RandomGenerator</a></dt>
<dd>
<div class="block">Sets the seed of the underlying random number generator using a
 <code>long</code> seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/SynchronizedRandomGenerator.html#setSeed(int)">setSeed(int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/SynchronizedRandomGenerator.html" title="class in org.apache.commons.math3.random">SynchronizedRandomGenerator</a></dt>
<dd>
<div class="block">Sets the seed of the underlying random number generator using an
 <code>int</code> seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/SynchronizedRandomGenerator.html#setSeed(int[])">setSeed(int[])</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/SynchronizedRandomGenerator.html" title="class in org.apache.commons.math3.random">SynchronizedRandomGenerator</a></dt>
<dd>
<div class="block">Sets the seed of the underlying random number generator using an
 <code>int</code> array seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/SynchronizedRandomGenerator.html#setSeed(long)">setSeed(long)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/SynchronizedRandomGenerator.html" title="class in org.apache.commons.math3.random">SynchronizedRandomGenerator</a></dt>
<dd>
<div class="block">Sets the seed of the underlying random number generator using a
 <code>long</code> seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/ValueServer.html#setSigma(double)">setSigma(double)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/ValueServer.html" title="class in org.apache.commons.math3.random">ValueServer</a></dt>
<dd>
<div class="block">Sets the <a href="./org/apache/commons/math3/random/ValueServer.html#getSigma()"><code>standard deviation</code></a> used in <a href="./org/apache/commons/math3/random/ValueServer.html#GAUSSIAN_MODE"><code>ValueServer.GAUSSIAN_MODE</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/SimplexOptimizer.html#setSimplex(org.apache.commons.math3.optimization.direct.AbstractSimplex)">setSimplex(AbstractSimplex)</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/SimplexOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">SimplexOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1. The initial simplex can now be passed as an
 argument of the <a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateOptimizer.html#optimize(int, FUNC, org.apache.commons.math3.optimization.GoalType, org.apache.commons.math3.optimization.OptimizationData...)"><code>BaseAbstractMultivariateOptimizer.optimize(int,MultivariateFunction,GoalType,OptimizationData[])</code></a>
 method.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html#setSize(double)">setSize(double)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractRegion</a></dt>
<dd>
<div class="block">Set the size of the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#setSkewnessImpl(org.apache.commons.math3.stat.descriptive.UnivariateStatistic)">setSkewnessImpl(UnivariateStatistic)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Sets the implementation for the skewness.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#setSoftCurrentTime(double)">setSoftCurrentTime(double)</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">Restrict step range to a limited part of the global step.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#setSoftPreviousTime(double)">setSoftPreviousTime(double)</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">Restrict step range to a limited part of the global step.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/GraggBulirschStoerIntegrator.html#setStabilityCheck(boolean, int, int, double)">setStabilityCheck(boolean, int, int, double)</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/GraggBulirschStoerIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">GraggBulirschStoerIntegrator</a></dt>
<dd>
<div class="block">Set the stability check controls.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/MultistepIntegrator.html#setStarterIntegrator(org.apache.commons.math3.ode.FirstOrderIntegrator)">setStarterIntegrator(FirstOrderIntegrator)</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/MultistepIntegrator.html" title="class in org.apache.commons.math3.ode">MultistepIntegrator</a></dt>
<dd>
<div class="block">Set the starter integrator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractIntegrator.html#setStateInitialized(boolean)">setStateInitialized(boolean)</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractIntegrator.html" title="class in org.apache.commons.math3.ode">AbstractIntegrator</a></dt>
<dd>
<div class="block">Set the stateInitialized flag.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html#setStepSizeControl(double, double, double, double)">setStepSizeControl(double, double, double, double)</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">AdaptiveStepsizeIntegrator</a></dt>
<dd>
<div class="block">Set the adaptive step size control parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html#setStepSizeControl(double, double, double[], double[])">setStepSizeControl(double, double, double[], double[])</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">AdaptiveStepsizeIntegrator</a></dt>
<dd>
<div class="block">Set the adaptive step size control parameters.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#setSubMatrix(T[][], int, int)">setSubMatrix(T[][], int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Replace the submatrix starting at <code>(row, column)</code> using data in the
 input <code>subMatrix</code> array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#setSubMatrix(double[][], int, int)">setSubMatrix(double[][], int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Replace the submatrix starting at <code>row, column</code> using data in the
 input <code>subMatrix</code> array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html#setSubMatrix(T[][], int, int)">setSubMatrix(T[][], int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowFieldMatrix</a></dt>
<dd>
<div class="block">Replace the submatrix starting at <code>(row, column)</code> using data in the
 input <code>subMatrix</code> array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html#setSubMatrix(double[][], int, int)">setSubMatrix(double[][], int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowRealMatrix</a></dt>
<dd>
<div class="block">Replace the submatrix starting at <code>row, column</code> using data in the
 input <code>subMatrix</code> array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#setSubMatrix(T[][], int, int)">setSubMatrix(T[][], int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Replace the submatrix starting at <code>(row, column)</code> using data in the
 input <code>subMatrix</code> array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#setSubMatrix(double[][], int, int)">setSubMatrix(double[][], int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Replace the submatrix starting at <code>row, column</code> using data in the
 input <code>subMatrix</code> array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#setSubMatrix(T[][], int, int)">setSubMatrix(T[][], int, int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Replace the submatrix starting at <code>(row, column)</code> using data in the
 input <code>subMatrix</code> array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#setSubMatrix(double[][], int, int)">setSubMatrix(double[][], int, int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Replace the submatrix starting at <code>row, column</code> using data in the
 input <code>subMatrix</code> array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#setSubVector(int, org.apache.commons.math3.linear.FieldVector)">setSubVector(int, FieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Set a set of consecutive elements.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#setSubVector(int, org.apache.commons.math3.linear.RealVector)">setSubVector(int, RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Set a sequence of consecutive elements.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#setSubVector(int, double[])">setSubVector(int, double[])</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Set a set of consecutive elements.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVector.html#setSubVector(int, org.apache.commons.math3.linear.FieldVector)">setSubVector(int, FieldVector&lt;T&gt;)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVector.html" title="interface in org.apache.commons.math3.linear">FieldVector</a></dt>
<dd>
<div class="block">Set a set of consecutive elements.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#setSubVector(int, org.apache.commons.math3.linear.RealVector)">setSubVector(int, RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Set a sequence of consecutive elements.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#setSubVector(int, org.apache.commons.math3.linear.RealVector)">setSubVector(int, RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Set a sequence of consecutive elements.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#setSubVector(int, org.apache.commons.math3.linear.FieldVector)">setSubVector(int, FieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Set a set of consecutive elements.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#setSumImpl(org.apache.commons.math3.stat.descriptive.UnivariateStatistic)">setSumImpl(UnivariateStatistic)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Sets the implementation for the sum.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#setSumImpl(org.apache.commons.math3.stat.descriptive.StorelessUnivariateStatistic[])">setSumImpl(StorelessUnivariateStatistic[])</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">MultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Sets the implementation for the Sum.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#setSumImpl(org.apache.commons.math3.stat.descriptive.StorelessUnivariateStatistic)">setSumImpl(StorelessUnivariateStatistic)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">
 Sets the implementation for the Sum.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html#setSumImpl(org.apache.commons.math3.stat.descriptive.StorelessUnivariateStatistic[])">setSumImpl(StorelessUnivariateStatistic[])</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedMultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Sets the implementation for the Sum.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#setSumImpl(org.apache.commons.math3.stat.descriptive.StorelessUnivariateStatistic)">setSumImpl(StorelessUnivariateStatistic)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">
 Sets the implementation for the Sum.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/GeometricMean.html#setSumLogImpl(org.apache.commons.math3.stat.descriptive.StorelessUnivariateStatistic)">setSumLogImpl(StorelessUnivariateStatistic)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/GeometricMean.html" title="class in org.apache.commons.math3.stat.descriptive.moment">GeometricMean</a></dt>
<dd>
<div class="block">Sets the implementation for the sum of logs.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#setSumLogImpl(org.apache.commons.math3.stat.descriptive.StorelessUnivariateStatistic[])">setSumLogImpl(StorelessUnivariateStatistic[])</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">MultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Sets the implementation for the sum of logs.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#setSumLogImpl(org.apache.commons.math3.stat.descriptive.StorelessUnivariateStatistic)">setSumLogImpl(StorelessUnivariateStatistic)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">
 Sets the implementation for the sum of logs.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html#setSumLogImpl(org.apache.commons.math3.stat.descriptive.StorelessUnivariateStatistic[])">setSumLogImpl(StorelessUnivariateStatistic[])</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedMultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Sets the implementation for the sum of logs.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#setSumLogImpl(org.apache.commons.math3.stat.descriptive.StorelessUnivariateStatistic)">setSumLogImpl(StorelessUnivariateStatistic)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">
 Sets the implementation for the sum of logs.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#setSumsqImpl(org.apache.commons.math3.stat.descriptive.UnivariateStatistic)">setSumsqImpl(UnivariateStatistic)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Sets the implementation for the sum of squares.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#setSumsqImpl(org.apache.commons.math3.stat.descriptive.StorelessUnivariateStatistic[])">setSumsqImpl(StorelessUnivariateStatistic[])</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">MultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Sets the implementation for the sum of squares.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#setSumsqImpl(org.apache.commons.math3.stat.descriptive.StorelessUnivariateStatistic)">setSumsqImpl(StorelessUnivariateStatistic)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">
 Sets the implementation for the sum of squares.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html#setSumsqImpl(org.apache.commons.math3.stat.descriptive.StorelessUnivariateStatistic[])">setSumsqImpl(StorelessUnivariateStatistic[])</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedMultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Sets the implementation for the sum of squares.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#setSumsqImpl(org.apache.commons.math3.stat.descriptive.StorelessUnivariateStatistic)">setSumsqImpl(StorelessUnivariateStatistic)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">
 Sets the implementation for the sum of squares.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html#setTime(double)">setTime(double)</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/ExpandableStatefulODE.html" title="class in org.apache.commons.math3.ode">ExpandableStatefulODE</a></dt>
<dd>
<div class="block">Set current time.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html#setup(int, org.apache.commons.math3.analysis.UnivariateFunction, double, double)">setup(int, UnivariateFunction, double, double)</a></span> - Method in class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/BaseAbstractUnivariateIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">BaseAbstractUnivariateIntegrator</a></dt>
<dd>
<div class="block">Prepare for computation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/AbstractDifferentiableUnivariateSolver.html#setup(int, org.apache.commons.math3.analysis.DifferentiableUnivariateFunction, double, double, double)">setup(int, DifferentiableUnivariateFunction, double, double, double)</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/AbstractDifferentiableUnivariateSolver.html" title="class in org.apache.commons.math3.analysis.solvers">AbstractDifferentiableUnivariateSolver</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Prepare for computation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/AbstractPolynomialSolver.html#setup(int, org.apache.commons.math3.analysis.polynomials.PolynomialFunction, double, double, double)">setup(int, PolynomialFunction, double, double, double)</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/AbstractPolynomialSolver.html" title="class in org.apache.commons.math3.analysis.solvers">AbstractPolynomialSolver</a></dt>
<dd>
<div class="block">Prepare for computation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/AbstractUnivariateDifferentiableSolver.html#setup(int, org.apache.commons.math3.analysis.differentiation.UnivariateDifferentiableFunction, double, double, double)">setup(int, UnivariateDifferentiableFunction, double, double, double)</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/AbstractUnivariateDifferentiableSolver.html" title="class in org.apache.commons.math3.analysis.solvers">AbstractUnivariateDifferentiableSolver</a></dt>
<dd>
<div class="block">Prepare for computation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html#setup(int, FUNC, double, double, double)">setup(int, FUNC, double, double, double)</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BaseAbstractUnivariateSolver</a></dt>
<dd>
<div class="block">Prepare for computation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html#setUp()">setUp()</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">BaseAbstractMultivariateVectorOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Method which a subclass <em>must</em> override whenever its internal
 state depend on the <a href="./org/apache/commons/math3/optimization/OptimizationData.html" title="interface in org.apache.commons.math3.optimization"><code>input</code></a> parsed by this base
 class.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#setUp()">setUp()</a></span> - Method in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Method which a subclass <em>must</em> override whenever its internal
 state depend on the <a href="./org/apache/commons/math3/optimization/OptimizationData.html" title="interface in org.apache.commons.math3.optimization"><code>input</code></a> parsed by this base
 class.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/util/ExceptionContext.html#setValue(java.lang.String, java.lang.Object)">setValue(String, Object)</a></span> - Method in class org.apache.commons.math3.exception.util.<a href="./org/apache/commons/math3/exception/util/ExceptionContext.html" title="class in org.apache.commons.math3.exception.util">ExceptionContext</a></dt>
<dd>
<div class="block">Sets the context (key, value) pair.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.OpenMapEntry.html#setValue(double)">setValue(double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.OpenMapEntry.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector.OpenMapEntry</a></dt>
<dd>
<div class="block">Set the value of the entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.Entry.html#setValue(double)">setValue(double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.Entry.html" title="class in org.apache.commons.math3.linear">RealVector.Entry</a></dt>
<dd>
<div class="block">Set the value of the entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/ValueServer.html#setValuesFileURL(java.lang.String)">setValuesFileURL(String)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/ValueServer.html" title="class in org.apache.commons.math3.random">ValueServer</a></dt>
<dd>
<div class="block">Sets the <a href="./org/apache/commons/math3/random/ValueServer.html#getValuesFileURL()"><code>values file URL</code></a> using a string
 URL representation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/ValueServer.html#setValuesFileURL(java.net.URL)">setValuesFileURL(URL)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/ValueServer.html" title="class in org.apache.commons.math3.random">ValueServer</a></dt>
<dd>
<div class="block">Sets the the <a href="./org/apache/commons/math3/random/ValueServer.html#getValuesFileURL()"><code>values file URL</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html#setVarianceDirection(org.apache.commons.math3.stat.descriptive.moment.SemiVariance.Direction)">setVarianceDirection(SemiVariance.Direction)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">SemiVariance</a></dt>
<dd>
<div class="block">Sets the variance direction</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#setVarianceImpl(org.apache.commons.math3.stat.descriptive.UnivariateStatistic)">setVarianceImpl(UnivariateStatistic)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Sets the implementation for the variance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#setVarianceImpl(org.apache.commons.math3.stat.descriptive.StorelessUnivariateStatistic)">setVarianceImpl(StorelessUnivariateStatistic)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">
 Sets the implementation for the variance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#setVarianceImpl(org.apache.commons.math3.stat.descriptive.StorelessUnivariateStatistic)">setVarianceImpl(StorelessUnivariateStatistic)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">
 Sets the implementation for the variance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/ProperBigFractionFormat.html#setWholeFormat(java.text.NumberFormat)">setWholeFormat(NumberFormat)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/ProperBigFractionFormat.html" title="class in org.apache.commons.math3.fraction">ProperBigFractionFormat</a></dt>
<dd>
<div class="block">Modify the whole format.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/ProperFractionFormat.html#setWholeFormat(java.text.NumberFormat)">setWholeFormat(NumberFormat)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/ProperFractionFormat.html" title="class in org.apache.commons.math3.fraction">ProperFractionFormat</a></dt>
<dd>
<div class="block">Modify the whole format.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#setWindowSize(int)">setWindowSize(int)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">WindowSize controls the number of values that contribute to the
 reported statistics.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html#setWindowSize(int)">setWindowSize(int)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedDescriptiveStatistics</a></dt>
<dd>
<div class="block">WindowSize controls the number of values that contribute to the
 reported statistics.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialsUtils.html#shift(double[], double)">shift(double[], double)</a></span> - Static method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialsUtils.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialsUtils</a></dt>
<dd>
<div class="block">Compute the coefficients of the polynomial <code>P<sub>s</sub>(x)</code>
 whose values at point <code>x</code> will be the same as the those from the
 original polynomial <code>P(x)</code> when computed at <code>x + shift</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#shift()">shift()</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">Shift one step forward.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#shiftLeft()">shiftLeft()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Shift the mantissa left, and adjust the exponent to compensate.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#shiftRight()">shiftRight()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Shift the mantissa right, and adjust the exponent to compensate.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#shortValue()">shortValue()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">

 The current implementation performs casting to a <code>short</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#shuffle(int[], int, org.apache.commons.math3.util.MathArrays.Position)">shuffle(int[], int, MathArrays.Position)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Shuffle the entries of the given array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#shuffle(int[], int, org.apache.commons.math3.util.MathArrays.Position, org.apache.commons.math3.random.RandomGenerator)">shuffle(int[], int, MathArrays.Position, RandomGenerator)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Shuffle the entries of the given array, using the
 <a href="http://en.wikipedia.org/wiki/Fisher–Yates_shuffle#The_modern_algorithm">
 Fisher–Yates</a> algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#shuffle(int[], org.apache.commons.math3.random.RandomGenerator)">shuffle(int[], RandomGenerator)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Shuffle the entries of the given array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#shuffle(int[])">shuffle(int[])</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Shuffle the entries of the given array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/SubOrientedPoint.html#side(org.apache.commons.math3.geometry.partitioning.Hyperplane)">side(Hyperplane&lt;Euclidean1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/SubOrientedPoint.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">SubOrientedPoint</a></dt>
<dd>
<div class="block">Compute the relative position of the instance with respect
 to an hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/SubPlane.html#side(org.apache.commons.math3.geometry.partitioning.Hyperplane)">side(Hyperplane&lt;Euclidean3D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/SubPlane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">SubPlane</a></dt>
<dd>
<div class="block">Compute the relative position of the instance with respect
 to an hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/SubLine.html#side(org.apache.commons.math3.geometry.partitioning.Hyperplane)">side(Hyperplane&lt;Euclidean2D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/SubLine.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">SubLine</a></dt>
<dd>
<div class="block">Compute the relative position of the instance with respect
 to an hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html#side(org.apache.commons.math3.geometry.partitioning.Hyperplane)">side(Hyperplane&lt;S&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractRegion.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractRegion</a></dt>
<dd>
<div class="block">Compute the relative position of the instance with respect to an
 hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractSubHyperplane.html#side(org.apache.commons.math3.geometry.partitioning.Hyperplane)">side(Hyperplane&lt;S&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractSubHyperplane.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractSubHyperplane</a></dt>
<dd>
<div class="block">Compute the relative position of the instance with respect
 to an hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/Region.html#side(org.apache.commons.math3.geometry.partitioning.Hyperplane)">side(Hyperplane&lt;S&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/Region.html" title="interface in org.apache.commons.math3.geometry.partitioning">Region</a></dt>
<dd>
<div class="block">Compute the relative position of the instance with respect to an
 hyperplane.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/partitioning/Side.html" title="enum in org.apache.commons.math3.geometry.partitioning"><span class="strong">Side</span></a> - Enum in <a href="./org/apache/commons/math3/geometry/partitioning/package-summary.html">org.apache.commons.math3.geometry.partitioning</a></dt>
<dd>
<div class="block">Enumerate representing the location of an element with respect to an
 <a href="./org/apache/commons/math3/geometry/partitioning/Hyperplane.html" title="interface in org.apache.commons.math3.geometry.partitioning"><code>hyperplane</code></a> of a space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/SubHyperplane.html#side(org.apache.commons.math3.geometry.partitioning.Hyperplane)">side(Hyperplane&lt;S&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/SubHyperplane.html" title="interface in org.apache.commons.math3.geometry.partitioning">SubHyperplane</a></dt>
<dd>
<div class="block">Compute the relative position of the instance with respect
 to an hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/ArcsSet.html#side(org.apache.commons.math3.geometry.spherical.oned.Arc)">side(Arc)</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/ArcsSet.html" title="class in org.apache.commons.math3.geometry.spherical.oned">ArcsSet</a></dt>
<dd>
<div class="block">Compute the relative position of the instance with respect
 to an arc.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/SubLimitAngle.html#side(org.apache.commons.math3.geometry.partitioning.Hyperplane)">side(Hyperplane&lt;Sphere1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/SubLimitAngle.html" title="class in org.apache.commons.math3.geometry.spherical.oned">SubLimitAngle</a></dt>
<dd>
<div class="block">Compute the relative position of the instance with respect
 to an hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/SubCircle.html#side(org.apache.commons.math3.geometry.partitioning.Hyperplane)">side(Hyperplane&lt;Sphere2D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/SubCircle.html" title="class in org.apache.commons.math3.geometry.spherical.twod">SubCircle</a></dt>
<dd>
<div class="block">Compute the relative position of the instance with respect
 to an hyperplane.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Sigmoid.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Sigmoid</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block"><a href="http://en.wikipedia.org/wiki/Sigmoid_function">
  Sigmoid</a> function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Sigmoid.html#Sigmoid()">Sigmoid()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Sigmoid.html" title="class in org.apache.commons.math3.analysis.function">Sigmoid</a></dt>
<dd>
<div class="block">Usual sigmoid function, where the lower asymptote is 0 and the higher
 asymptote is 1.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Sigmoid.html#Sigmoid(double, double)">Sigmoid(double, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Sigmoid.html" title="class in org.apache.commons.math3.analysis.function">Sigmoid</a></dt>
<dd>
<div class="block">Sigmoid function.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Sigmoid.Parametric.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Sigmoid.Parametric</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Parametric function where the input array contains the parameters of
 the <a href="./org/apache/commons/math3/analysis/function/Sigmoid.html#Sigmoid(double, double)"><code>sigmoid function</code></a>, ordered
 as follows:
 
  Lower asymptote
  Higher asymptote
 </div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Sigmoid.Parametric.html#Sigmoid.Parametric()">Sigmoid.Parametric()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Sigmoid.Parametric.html" title="class in org.apache.commons.math3.analysis.function">Sigmoid.Parametric</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#sign">sign</a></span> - Variable in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Sign bit: 1 for positive, -1 for negative.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#signum()">signum()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Compute the signum of the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#signum()">signum()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Compute the signum of the instance.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Signum.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Signum</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block"><code>signum</code> function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Signum.html#Signum()">Signum()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Signum.html" title="class in org.apache.commons.math3.analysis.function">Signum</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#signum()">signum()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Compute the signum of the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#signum()">signum()</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Compute the signum of the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#signum()">signum()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Compute the signum of the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#signum(double)">signum(double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Compute the signum of a number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#signum(float)">signum(float)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Compute the signum of a number.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/SimpleBounds.html" title="class in org.apache.commons.math3.optim"><span class="strong">SimpleBounds</span></a> - Class in <a href="./org/apache/commons/math3/optim/package-summary.html">org.apache.commons.math3.optim</a></dt>
<dd>
<div class="block">Simple optimization constraints: lower and upper bounds.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/SimpleBounds.html#SimpleBounds(double[], double[])">SimpleBounds(double[], double[])</a></span> - Constructor for class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/SimpleBounds.html" title="class in org.apache.commons.math3.optim">SimpleBounds</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optimization/SimpleBounds.html" title="class in org.apache.commons.math3.optimization"><span class="strong">SimpleBounds</span></a> - Class in <a href="./org/apache/commons/math3/optimization/package-summary.html">org.apache.commons.math3.optimization</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/SimpleBounds.html#SimpleBounds(double[], double[])">SimpleBounds(double[], double[])</a></span> - Constructor for class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/SimpleBounds.html" title="class in org.apache.commons.math3.optimization">SimpleBounds</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optim/SimplePointChecker.html" title="class in org.apache.commons.math3.optim"><span class="strong">SimplePointChecker</span></a>&lt;<a href="./org/apache/commons/math3/optim/SimplePointChecker.html" title="type parameter in SimplePointChecker">PAIR</a> extends <a href="./org/apache/commons/math3/util/Pair.html" title="class in org.apache.commons.math3.util">Pair</a>&lt;double[],? 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>&gt;&gt; - Class in <a href="./org/apache/commons/math3/optim/package-summary.html">org.apache.commons.math3.optim</a></dt>
<dd>
<div class="block">Simple implementation of the <a href="./org/apache/commons/math3/optim/ConvergenceChecker.html" title="interface in org.apache.commons.math3.optim"><code>ConvergenceChecker</code></a> interface using
 only point coordinates.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/SimplePointChecker.html#SimplePointChecker(double, double)">SimplePointChecker(double, double)</a></span> - Constructor for class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/SimplePointChecker.html" title="class in org.apache.commons.math3.optim">SimplePointChecker</a></dt>
<dd>
<div class="block">Build an instance with specified thresholds.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/SimplePointChecker.html#SimplePointChecker(double, double, int)">SimplePointChecker(double, double, int)</a></span> - Constructor for class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/SimplePointChecker.html" title="class in org.apache.commons.math3.optim">SimplePointChecker</a></dt>
<dd>
<div class="block">Builds an instance with specified thresholds.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/SimplePointChecker.html" title="class in org.apache.commons.math3.optimization"><span class="strong">SimplePointChecker</span></a>&lt;<a href="./org/apache/commons/math3/optimization/SimplePointChecker.html" title="type parameter in SimplePointChecker">PAIR</a> extends <a href="./org/apache/commons/math3/util/Pair.html" title="class in org.apache.commons.math3.util">Pair</a>&lt;double[],? 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>&gt;&gt; - Class in <a href="./org/apache/commons/math3/optimization/package-summary.html">org.apache.commons.math3.optimization</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/SimplePointChecker.html#SimplePointChecker()">SimplePointChecker()</a></span> - Constructor for class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/SimplePointChecker.html" title="class in org.apache.commons.math3.optimization">SimplePointChecker</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>See <a href="./org/apache/commons/math3/optimization/AbstractConvergenceChecker.html#AbstractConvergenceChecker()"><code>AbstractConvergenceChecker.AbstractConvergenceChecker()</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/SimplePointChecker.html#SimplePointChecker(double, double)">SimplePointChecker(double, double)</a></span> - Constructor for class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/SimplePointChecker.html" title="class in org.apache.commons.math3.optimization">SimplePointChecker</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build an instance with specified thresholds.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/SimplePointChecker.html#SimplePointChecker(double, double, int)">SimplePointChecker(double, double, int)</a></span> - Constructor for class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/SimplePointChecker.html" title="class in org.apache.commons.math3.optimization">SimplePointChecker</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Builds an instance with specified thresholds.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html" title="class in org.apache.commons.math3.stat.regression"><span class="strong">SimpleRegression</span></a> - Class in <a href="./org/apache/commons/math3/stat/regression/package-summary.html">org.apache.commons.math3.stat.regression</a></dt>
<dd>
<div class="block">Estimates an ordinary least squares regression model
 with one independent variable.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html#SimpleRegression()">SimpleRegression()</a></span> - Constructor for class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html" title="class in org.apache.commons.math3.stat.regression">SimpleRegression</a></dt>
<dd>
<div class="block">Create an empty SimpleRegression instance</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html#SimpleRegression(boolean)">SimpleRegression(boolean)</a></span> - Constructor for class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/SimpleRegression.html" title="class in org.apache.commons.math3.stat.regression">SimpleRegression</a></dt>
<dd>
<div class="block">Create a SimpleRegression instance, specifying whether or not to estimate
 an intercept.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/univariate/SimpleUnivariateValueChecker.html" title="class in org.apache.commons.math3.optim.univariate"><span class="strong">SimpleUnivariateValueChecker</span></a> - Class in <a href="./org/apache/commons/math3/optim/univariate/package-summary.html">org.apache.commons.math3.optim.univariate</a></dt>
<dd>
<div class="block">Simple implementation of the
 <a href="./org/apache/commons/math3/optimization/ConvergenceChecker.html" title="interface in org.apache.commons.math3.optimization"><code>ConvergenceChecker</code></a> interface
 that uses only objective function values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/SimpleUnivariateValueChecker.html#SimpleUnivariateValueChecker(double, double)">SimpleUnivariateValueChecker(double, double)</a></span> - Constructor for class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/SimpleUnivariateValueChecker.html" title="class in org.apache.commons.math3.optim.univariate">SimpleUnivariateValueChecker</a></dt>
<dd>
<div class="block">Build an instance with specified thresholds.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/SimpleUnivariateValueChecker.html#SimpleUnivariateValueChecker(double, double, int)">SimpleUnivariateValueChecker(double, double, int)</a></span> - Constructor for class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/SimpleUnivariateValueChecker.html" title="class in org.apache.commons.math3.optim.univariate">SimpleUnivariateValueChecker</a></dt>
<dd>
<div class="block">Builds an instance with specified thresholds.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/univariate/SimpleUnivariateValueChecker.html" title="class in org.apache.commons.math3.optimization.univariate"><span class="strong">SimpleUnivariateValueChecker</span></a> - Class in <a href="./org/apache/commons/math3/optimization/univariate/package-summary.html">org.apache.commons.math3.optimization.univariate</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/SimpleUnivariateValueChecker.html#SimpleUnivariateValueChecker()">SimpleUnivariateValueChecker()</a></span> - Constructor for class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/SimpleUnivariateValueChecker.html" title="class in org.apache.commons.math3.optimization.univariate">SimpleUnivariateValueChecker</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>See <a href="./org/apache/commons/math3/optimization/AbstractConvergenceChecker.html#AbstractConvergenceChecker()"><code>AbstractConvergenceChecker.AbstractConvergenceChecker()</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/SimpleUnivariateValueChecker.html#SimpleUnivariateValueChecker(double, double)">SimpleUnivariateValueChecker(double, double)</a></span> - Constructor for class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/SimpleUnivariateValueChecker.html" title="class in org.apache.commons.math3.optimization.univariate">SimpleUnivariateValueChecker</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build an instance with specified thresholds.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/SimpleUnivariateValueChecker.html#SimpleUnivariateValueChecker(double, double, int)">SimpleUnivariateValueChecker(double, double, int)</a></span> - Constructor for class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/SimpleUnivariateValueChecker.html" title="class in org.apache.commons.math3.optimization.univariate">SimpleUnivariateValueChecker</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Builds an instance with specified thresholds.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/SimpleValueChecker.html" title="class in org.apache.commons.math3.optim"><span class="strong">SimpleValueChecker</span></a> - Class in <a href="./org/apache/commons/math3/optim/package-summary.html">org.apache.commons.math3.optim</a></dt>
<dd>
<div class="block">Simple implementation of the <a href="./org/apache/commons/math3/optim/ConvergenceChecker.html" title="interface in org.apache.commons.math3.optim"><code>ConvergenceChecker</code></a> interface using
 only objective function values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/SimpleValueChecker.html#SimpleValueChecker(double, double)">SimpleValueChecker(double, double)</a></span> - Constructor for class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/SimpleValueChecker.html" title="class in org.apache.commons.math3.optim">SimpleValueChecker</a></dt>
<dd>
<div class="block">Build an instance with specified thresholds.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/SimpleValueChecker.html#SimpleValueChecker(double, double, int)">SimpleValueChecker(double, double, int)</a></span> - Constructor for class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/SimpleValueChecker.html" title="class in org.apache.commons.math3.optim">SimpleValueChecker</a></dt>
<dd>
<div class="block">Builds an instance with specified thresholds.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/SimpleValueChecker.html" title="class in org.apache.commons.math3.optimization"><span class="strong">SimpleValueChecker</span></a> - Class in <a href="./org/apache/commons/math3/optimization/package-summary.html">org.apache.commons.math3.optimization</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/SimpleValueChecker.html#SimpleValueChecker()">SimpleValueChecker()</a></span> - Constructor for class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/SimpleValueChecker.html" title="class in org.apache.commons.math3.optimization">SimpleValueChecker</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>See <a href="./org/apache/commons/math3/optimization/AbstractConvergenceChecker.html#AbstractConvergenceChecker()"><code>AbstractConvergenceChecker.AbstractConvergenceChecker()</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/SimpleValueChecker.html#SimpleValueChecker(double, double)">SimpleValueChecker(double, double)</a></span> - Constructor for class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/SimpleValueChecker.html" title="class in org.apache.commons.math3.optimization">SimpleValueChecker</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build an instance with specified thresholds.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/SimpleValueChecker.html#SimpleValueChecker(double, double, int)">SimpleValueChecker(double, double, int)</a></span> - Constructor for class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/SimpleValueChecker.html" title="class in org.apache.commons.math3.optimization">SimpleValueChecker</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Builds an instance with specified thresholds.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/SimpleVectorValueChecker.html" title="class in org.apache.commons.math3.optim"><span class="strong">SimpleVectorValueChecker</span></a> - Class in <a href="./org/apache/commons/math3/optim/package-summary.html">org.apache.commons.math3.optim</a></dt>
<dd>
<div class="block">Simple implementation of the <a href="./org/apache/commons/math3/optim/ConvergenceChecker.html" title="interface in org.apache.commons.math3.optim"><code>ConvergenceChecker</code></a> interface using
 only objective function values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/SimpleVectorValueChecker.html#SimpleVectorValueChecker(double, double)">SimpleVectorValueChecker(double, double)</a></span> - Constructor for class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/SimpleVectorValueChecker.html" title="class in org.apache.commons.math3.optim">SimpleVectorValueChecker</a></dt>
<dd>
<div class="block">Build an instance with specified thresholds.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/SimpleVectorValueChecker.html#SimpleVectorValueChecker(double, double, int)">SimpleVectorValueChecker(double, double, int)</a></span> - Constructor for class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/SimpleVectorValueChecker.html" title="class in org.apache.commons.math3.optim">SimpleVectorValueChecker</a></dt>
<dd>
<div class="block">Builds an instance with specified tolerance thresholds and
 iteration count.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/SimpleVectorValueChecker.html" title="class in org.apache.commons.math3.optimization"><span class="strong">SimpleVectorValueChecker</span></a> - Class in <a href="./org/apache/commons/math3/optimization/package-summary.html">org.apache.commons.math3.optimization</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/SimpleVectorValueChecker.html#SimpleVectorValueChecker()">SimpleVectorValueChecker()</a></span> - Constructor for class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/SimpleVectorValueChecker.html" title="class in org.apache.commons.math3.optimization">SimpleVectorValueChecker</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>See <a href="./org/apache/commons/math3/optimization/AbstractConvergenceChecker.html#AbstractConvergenceChecker()"><code>AbstractConvergenceChecker.AbstractConvergenceChecker()</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/SimpleVectorValueChecker.html#SimpleVectorValueChecker(double, double)">SimpleVectorValueChecker(double, double)</a></span> - Constructor for class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/SimpleVectorValueChecker.html" title="class in org.apache.commons.math3.optimization">SimpleVectorValueChecker</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build an instance with specified thresholds.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/SimpleVectorValueChecker.html#SimpleVectorValueChecker(double, double, int)">SimpleVectorValueChecker(double, double, int)</a></span> - Constructor for class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/SimpleVectorValueChecker.html" title="class in org.apache.commons.math3.optimization">SimpleVectorValueChecker</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Builds an instance with specified tolerance thresholds and
 iteration count.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/SimplexOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv"><span class="strong">SimplexOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/package-summary.html">org.apache.commons.math3.optim.nonlinear.scalar.noderiv</a></dt>
<dd>
<div class="block">This class implements simplex-based direct search optimization.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/SimplexOptimizer.html#SimplexOptimizer(org.apache.commons.math3.optim.ConvergenceChecker)">SimplexOptimizer(ConvergenceChecker&lt;PointValuePair&gt;)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/SimplexOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">SimplexOptimizer</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/SimplexOptimizer.html#SimplexOptimizer(double, double)">SimplexOptimizer(double, double)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.scalar.noderiv.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/noderiv/SimplexOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar.noderiv">SimplexOptimizer</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optimization/direct/SimplexOptimizer.html" title="class in org.apache.commons.math3.optimization.direct"><span class="strong">SimplexOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optimization/direct/package-summary.html">org.apache.commons.math3.optimization.direct</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/SimplexOptimizer.html#SimplexOptimizer()">SimplexOptimizer()</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/SimplexOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">SimplexOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>See <a href="./org/apache/commons/math3/optimization/SimpleValueChecker.html#SimpleValueChecker()"><code>SimpleValueChecker.SimpleValueChecker()</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/SimplexOptimizer.html#SimplexOptimizer(org.apache.commons.math3.optimization.ConvergenceChecker)">SimplexOptimizer(ConvergenceChecker&lt;PointValuePair&gt;)</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/SimplexOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">SimplexOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/SimplexOptimizer.html#SimplexOptimizer(double, double)">SimplexOptimizer(double, double)</a></span> - Constructor for class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/SimplexOptimizer.html" title="class in org.apache.commons.math3.optimization.direct">SimplexOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optim/linear/SimplexSolver.html" title="class in org.apache.commons.math3.optim.linear"><span class="strong">SimplexSolver</span></a> - Class in <a href="./org/apache/commons/math3/optim/linear/package-summary.html">org.apache.commons.math3.optim.linear</a></dt>
<dd>
<div class="block">Solves a linear problem using the "Two-Phase Simplex" method.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/SimplexSolver.html#SimplexSolver()">SimplexSolver()</a></span> - Constructor for class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/SimplexSolver.html" title="class in org.apache.commons.math3.optim.linear">SimplexSolver</a></dt>
<dd>
<div class="block">Builds a simplex solver with default settings.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/SimplexSolver.html#SimplexSolver(double)">SimplexSolver(double)</a></span> - Constructor for class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/SimplexSolver.html" title="class in org.apache.commons.math3.optim.linear">SimplexSolver</a></dt>
<dd>
<div class="block">Builds a simplex solver with a specified accepted amount of error.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/SimplexSolver.html#SimplexSolver(double, int)">SimplexSolver(double, int)</a></span> - Constructor for class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/SimplexSolver.html" title="class in org.apache.commons.math3.optim.linear">SimplexSolver</a></dt>
<dd>
<div class="block">Builds a simplex solver with a specified accepted amount of error.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/SimplexSolver.html#SimplexSolver(double, int, double)">SimplexSolver(double, int, double)</a></span> - Constructor for class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/SimplexSolver.html" title="class in org.apache.commons.math3.optim.linear">SimplexSolver</a></dt>
<dd>
<div class="block">Builds a simplex solver with a specified accepted amount of error.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/linear/SimplexSolver.html" title="class in org.apache.commons.math3.optimization.linear"><span class="strong">SimplexSolver</span></a> - Class in <a href="./org/apache/commons/math3/optimization/linear/package-summary.html">org.apache.commons.math3.optimization.linear</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/SimplexSolver.html#SimplexSolver()">SimplexSolver()</a></span> - Constructor for class org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/SimplexSolver.html" title="class in org.apache.commons.math3.optimization.linear">SimplexSolver</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a simplex solver with default settings.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/SimplexSolver.html#SimplexSolver(double, int)">SimplexSolver(double, int)</a></span> - Constructor for class org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/SimplexSolver.html" title="class in org.apache.commons.math3.optimization.linear">SimplexSolver</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a simplex solver with a specified accepted amount of error</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/SimpsonIntegrator.html#SIMPSON_MAX_ITERATIONS_COUNT">SIMPSON_MAX_ITERATIONS_COUNT</a></span> - Static variable in class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/SimpsonIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">SimpsonIntegrator</a></dt>
<dd>
<div class="block">Maximal number of iterations for Simpson.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/integration/SimpsonIntegrator.html" title="class in org.apache.commons.math3.analysis.integration"><span class="strong">SimpsonIntegrator</span></a> - Class in <a href="./org/apache/commons/math3/analysis/integration/package-summary.html">org.apache.commons.math3.analysis.integration</a></dt>
<dd>
<div class="block">Implements <a href="http://mathworld.wolfram.com/SimpsonsRule.html">
 Simpson's Rule</a> for integration of real univariate functions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/SimpsonIntegrator.html#SimpsonIntegrator(double, double, int, int)">SimpsonIntegrator(double, double, int, int)</a></span> - Constructor for class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/SimpsonIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">SimpsonIntegrator</a></dt>
<dd>
<div class="block">Build a Simpson integrator with given accuracies and iterations counts.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/SimpsonIntegrator.html#SimpsonIntegrator(int, int)">SimpsonIntegrator(int, int)</a></span> - Constructor for class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/SimpsonIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">SimpsonIntegrator</a></dt>
<dd>
<div class="block">Build a Simpson integrator with given iteration counts.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/SimpsonIntegrator.html#SimpsonIntegrator()">SimpsonIntegrator()</a></span> - Constructor for class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/SimpsonIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">SimpsonIntegrator</a></dt>
<dd>
<div class="block">Construct an integrator with default settings.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#sin()">sin()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Sine operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#sin(double[], int, double[], int)">sin(double[], int, double[], int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Compute sine of a derivative structure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#sin()">sin()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Sine operation.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Sin.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Sin</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Sine function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Sin.html#Sin()">Sin()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Sin.html" title="class in org.apache.commons.math3.analysis.function">Sin</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#sin()">sin()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Compute the
 <a href="http://mathworld.wolfram.com/Sine.html" TARGET="_top">
 sine</a>
 of this complex number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#sin()">sin()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Sine operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpMath.html#sin(org.apache.commons.math3.dfp.Dfp)">sin(Dfp)</a></span> - Static method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpMath.html" title="class in org.apache.commons.math3.dfp">DfpMath</a></dt>
<dd>
<div class="block">computes the sine of the argument.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#sin()">sin()</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Sine operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#sin()">sin()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Sine operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#sin(double)">sin(double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Sine function.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Sinc.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Sinc</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block"><a href="http://en.wikipedia.org/wiki/Sinc_function">Sinc</a> function,
 defined by</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Sinc.html#Sinc()">Sinc()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Sinc.html" title="class in org.apache.commons.math3.analysis.function">Sinc</a></dt>
<dd>
<div class="block">The sinc function, <code>sin(x) / x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Sinc.html#Sinc(boolean)">Sinc(boolean)</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Sinc.html" title="class in org.apache.commons.math3.analysis.function">Sinc</a></dt>
<dd>
<div class="block">Instantiates the sinc function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/RungeKuttaIntegrator.html#singleStep(org.apache.commons.math3.ode.FirstOrderDifferentialEquations, double, double[], double)">singleStep(FirstOrderDifferentialEquations, double, double[], double)</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/RungeKuttaIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">RungeKuttaIntegrator</a></dt>
<dd>
<div class="block">Fast computation of a single step of ODE integration.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/SingularMatrixException.html" title="class in org.apache.commons.math3.linear"><span class="strong">SingularMatrixException</span></a> - Exception in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Exception to be thrown when a non-singular matrix is expected.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SingularMatrixException.html#SingularMatrixException()">SingularMatrixException()</a></span> - Constructor for exception org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SingularMatrixException.html" title="class in org.apache.commons.math3.linear">SingularMatrixException</a></dt>
<dd>
<div class="block">Construct an exception.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/SingularOperatorException.html" title="class in org.apache.commons.math3.linear"><span class="strong">SingularOperatorException</span></a> - Exception in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Exception to be thrown when trying to invert a singular operator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SingularOperatorException.html#SingularOperatorException()">SingularOperatorException()</a></span> - Constructor for exception org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SingularOperatorException.html" title="class in org.apache.commons.math3.linear">SingularOperatorException</a></dt>
<dd>
<div class="block">Creates a new instance of this class.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/SingularValueDecomposition.html" title="class in org.apache.commons.math3.linear"><span class="strong">SingularValueDecomposition</span></a> - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Calculates the compact Singular Value Decomposition of a matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SingularValueDecomposition.html#SingularValueDecomposition(org.apache.commons.math3.linear.RealMatrix)">SingularValueDecomposition(RealMatrix)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SingularValueDecomposition.html" title="class in org.apache.commons.math3.linear">SingularValueDecomposition</a></dt>
<dd>
<div class="block">Calculates the compact Singular Value Decomposition of the given matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#sinh()">sinh()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Hyperbolic sine operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#sinh(double[], int, double[], int)">sinh(double[], int, double[], int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Compute hyperbolic sine of a derivative structure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#sinh()">sinh()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Hyperbolic sine operation.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Sinh.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Sinh</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Hyperbolic sine function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Sinh.html#Sinh()">Sinh()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Sinh.html" title="class in org.apache.commons.math3.analysis.function">Sinh</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#sinh()">sinh()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Compute the
 <a href="http://mathworld.wolfram.com/HyperbolicSine.html" TARGET="_top">
 hyperbolic sine</a> of this complex number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#sinh()">sinh()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Hyperbolic sine operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#sinh()">sinh()</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Hyperbolic sine operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#sinh()">sinh()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Hyperbolic sine operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#sinh(double)">sinh(double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Compute the hyperbolic sine of a number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpMath.html#sinInternal(org.apache.commons.math3.dfp.Dfp[])">sinInternal(Dfp[])</a></span> - Static method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpMath.html" title="class in org.apache.commons.math3.dfp">DfpMath</a></dt>
<dd>
<div class="block">Computes sin(a)  Used when 0 < a < pi/4.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/utilities/AVLTree.html#size()">size()</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.utilities.<a href="./org/apache/commons/math3/geometry/partitioning/utilities/AVLTree.html" title="class in org.apache.commons.math3.geometry.partitioning.utilities">AVLTree</a></dt>
<dd>
<div class="block">Get the number of elements of the tree.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.html#size()">size()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.html" title="class in org.apache.commons.math3.util">OpenIntToDoubleHashMap</a></dt>
<dd>
<div class="block">Get the number of elements stored in the map.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.html#size()">size()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.html" title="class in org.apache.commons.math3.util">OpenIntToFieldHashMap</a></dt>
<dd>
<div class="block">Get the number of elements stored in the map.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/moment/Skewness.html" title="class in org.apache.commons.math3.stat.descriptive.moment"><span class="strong">Skewness</span></a> - Class in <a href="./org/apache/commons/math3/stat/descriptive/moment/package-summary.html">org.apache.commons.math3.stat.descriptive.moment</a></dt>
<dd>
<div class="block">Computes the skewness of the available values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Skewness.html#Skewness()">Skewness()</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Skewness.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Skewness</a></dt>
<dd>
<div class="block">Constructs a Skewness</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Skewness.html#Skewness(org.apache.commons.math3.stat.descriptive.moment.ThirdMoment)">Skewness(ThirdMoment)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Skewness.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Skewness</a></dt>
<dd>
<div class="block">Constructs a Skewness with an external moment</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Skewness.html#Skewness(org.apache.commons.math3.stat.descriptive.moment.Skewness)">Skewness(Skewness)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Skewness.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Skewness</a></dt>
<dd>
<div class="block">Copy constructor, creates a new <code>Skewness</code> identical
 to the <code>original</code></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/HaltonSequenceGenerator.html#skipTo(int)">skipTo(int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/HaltonSequenceGenerator.html" title="class in org.apache.commons.math3.random">HaltonSequenceGenerator</a></dt>
<dd>
<div class="block">Skip to the i-th point in the Halton sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/SobolSequenceGenerator.html#skipTo(int)">skipTo(int)</a></span> - Method in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/SobolSequenceGenerator.html" title="class in org.apache.commons.math3.random">SobolSequenceGenerator</a></dt>
<dd>
<div class="block">Skip to the i-th point in the Sobol sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html#SMALL_SAMPLE_PRODUCT">SMALL_SAMPLE_PRODUCT</a></span> - Static variable in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/KolmogorovSmirnovTest.html" title="class in org.apache.commons.math3.stat.inference">KolmogorovSmirnovTest</a></dt>
<dd>
<div class="block">When product of sample sizes is less than this value, 2-sample K-S test is exact</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/LoessInterpolator.html#smooth(double[], double[], double[])">smooth(double[], double[], double[])</a></span> - Method in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/LoessInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">LoessInterpolator</a></dt>
<dd>
<div class="block">Compute a weighted loess fit on the data at the original abscissae.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/LoessInterpolator.html#smooth(double[], double[])">smooth(double[], double[])</a></span> - Method in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/LoessInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">LoessInterpolator</a></dt>
<dd>
<div class="block">Compute a loess fit on the data at the original abscissae.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/interpolation/SmoothingPolynomialBicubicSplineInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation"><span class="strong">SmoothingPolynomialBicubicSplineInterpolator</span></a> - Class in <a href="./org/apache/commons/math3/analysis/interpolation/package-summary.html">org.apache.commons.math3.analysis.interpolation</a></dt>
<dd>
<div class="block">Generates a bicubic interpolation function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/SmoothingPolynomialBicubicSplineInterpolator.html#SmoothingPolynomialBicubicSplineInterpolator()">SmoothingPolynomialBicubicSplineInterpolator()</a></span> - Constructor for class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/SmoothingPolynomialBicubicSplineInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">SmoothingPolynomialBicubicSplineInterpolator</a></dt>
<dd>
<div class="block">Default constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/SmoothingPolynomialBicubicSplineInterpolator.html#SmoothingPolynomialBicubicSplineInterpolator(int)">SmoothingPolynomialBicubicSplineInterpolator(int)</a></span> - Constructor for class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/SmoothingPolynomialBicubicSplineInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">SmoothingPolynomialBicubicSplineInterpolator</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/SmoothingPolynomialBicubicSplineInterpolator.html#SmoothingPolynomialBicubicSplineInterpolator(int, int)">SmoothingPolynomialBicubicSplineInterpolator(int, int)</a></span> - Constructor for class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/SmoothingPolynomialBicubicSplineInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">SmoothingPolynomialBicubicSplineInterpolator</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#SNAN">SNAN</a></span> - Static variable in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Indicator value for signaling NaN.</div>
</dd>
<dt><a href="./org/apache/commons/math3/random/SobolSequenceGenerator.html" title="class in org.apache.commons.math3.random"><span class="strong">SobolSequenceGenerator</span></a> - Class in <a href="./org/apache/commons/math3/random/package-summary.html">org.apache.commons.math3.random</a></dt>
<dd>
<div class="block">Implementation of a Sobol sequence.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/SobolSequenceGenerator.html#SobolSequenceGenerator(int)">SobolSequenceGenerator(int)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/SobolSequenceGenerator.html" title="class in org.apache.commons.math3.random">SobolSequenceGenerator</a></dt>
<dd>
<div class="block">Construct a new Sobol sequence generator for the given space dimension.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/SobolSequenceGenerator.html#SobolSequenceGenerator(int, java.io.InputStream)">SobolSequenceGenerator(int, InputStream)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/SobolSequenceGenerator.html" title="class in org.apache.commons.math3.random">SobolSequenceGenerator</a></dt>
<dd>
<div class="block">Construct a new Sobol sequence generator for the given space dimension with
 direction vectors loaded from the given stream.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/linear/SolutionCallback.html" title="class in org.apache.commons.math3.optim.linear"><span class="strong">SolutionCallback</span></a> - Class in <a href="./org/apache/commons/math3/optim/linear/package-summary.html">org.apache.commons.math3.optim.linear</a></dt>
<dd>
<div class="block">A constraint for a linear optimization problem indicating whether all
 variables must be restricted to non-negative values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/SolutionCallback.html#SolutionCallback()">SolutionCallback()</a></span> - Constructor for class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/SolutionCallback.html" title="class in org.apache.commons.math3.optim.linear">SolutionCallback</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html#solve(int, FUNC, double, double, double)">solve(int, FUNC, double, double, double)</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BaseAbstractUnivariateSolver</a></dt>
<dd>
<div class="block">Solve for a zero in the given interval, start at <code>startValue</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html#solve(int, FUNC, double, double)">solve(int, FUNC, double, double)</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BaseAbstractUnivariateSolver</a></dt>
<dd>
<div class="block">Solve for a zero root in the given interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html#solve(int, FUNC, double)">solve(int, FUNC, double)</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BaseAbstractUnivariateSolver</a></dt>
<dd>
<div class="block">Solve for a zero in the vicinity of <code>startValue</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseSecantSolver.html#solve(int, org.apache.commons.math3.analysis.UnivariateFunction, double, double, org.apache.commons.math3.analysis.solvers.AllowedSolution)">solve(int, UnivariateFunction, double, double, AllowedSolution)</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseSecantSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BaseSecantSolver</a></dt>
<dd>
<div class="block">Solve for a zero in the given interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseSecantSolver.html#solve(int, org.apache.commons.math3.analysis.UnivariateFunction, double, double, double, org.apache.commons.math3.analysis.solvers.AllowedSolution)">solve(int, UnivariateFunction, double, double, double, AllowedSolution)</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseSecantSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BaseSecantSolver</a></dt>
<dd>
<div class="block">Solve for a zero in the given interval, start at <code>startValue</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseSecantSolver.html#solve(int, org.apache.commons.math3.analysis.UnivariateFunction, double, double, double)">solve(int, UnivariateFunction, double, double, double)</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseSecantSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BaseSecantSolver</a></dt>
<dd>
<div class="block">Solve for a zero in the given interval, start at <code>startValue</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseUnivariateSolver.html#solve(int, FUNC, double, double)">solve(int, FUNC, double, double)</a></span> - Method in interface org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseUnivariateSolver.html" title="interface in org.apache.commons.math3.analysis.solvers">BaseUnivariateSolver</a></dt>
<dd>
<div class="block">Solve for a zero root in the given interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseUnivariateSolver.html#solve(int, FUNC, double, double, double)">solve(int, FUNC, double, double, double)</a></span> - Method in interface org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseUnivariateSolver.html" title="interface in org.apache.commons.math3.analysis.solvers">BaseUnivariateSolver</a></dt>
<dd>
<div class="block">Solve for a zero in the given interval, start at <code>startValue</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseUnivariateSolver.html#solve(int, FUNC, double)">solve(int, FUNC, double)</a></span> - Method in interface org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseUnivariateSolver.html" title="interface in org.apache.commons.math3.analysis.solvers">BaseUnivariateSolver</a></dt>
<dd>
<div class="block">Solve for a zero in the vicinity of <code>startValue</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BracketedUnivariateSolver.html#solve(int, FUNC, double, double, org.apache.commons.math3.analysis.solvers.AllowedSolution)">solve(int, FUNC, double, double, AllowedSolution)</a></span> - Method in interface org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BracketedUnivariateSolver.html" title="interface in org.apache.commons.math3.analysis.solvers">BracketedUnivariateSolver</a></dt>
<dd>
<div class="block">Solve for a zero in the given interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BracketedUnivariateSolver.html#solve(int, FUNC, double, double, double, org.apache.commons.math3.analysis.solvers.AllowedSolution)">solve(int, FUNC, double, double, double, AllowedSolution)</a></span> - Method in interface org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BracketedUnivariateSolver.html" title="interface in org.apache.commons.math3.analysis.solvers">BracketedUnivariateSolver</a></dt>
<dd>
<div class="block">Solve for a zero in the given interval, start at <code>startValue</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BracketingNthOrderBrentSolver.html#solve(int, org.apache.commons.math3.analysis.UnivariateFunction, double, double, org.apache.commons.math3.analysis.solvers.AllowedSolution)">solve(int, UnivariateFunction, double, double, AllowedSolution)</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BracketingNthOrderBrentSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BracketingNthOrderBrentSolver</a></dt>
<dd>
<div class="block">Solve for a zero in the given interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BracketingNthOrderBrentSolver.html#solve(int, org.apache.commons.math3.analysis.UnivariateFunction, double, double, double, org.apache.commons.math3.analysis.solvers.AllowedSolution)">solve(int, UnivariateFunction, double, double, double, AllowedSolution)</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BracketingNthOrderBrentSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BracketingNthOrderBrentSolver</a></dt>
<dd>
<div class="block">Solve for a zero in the given interval, start at <code>startValue</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/NewtonRaphsonSolver.html#solve(int, org.apache.commons.math3.analysis.differentiation.UnivariateDifferentiableFunction, double, double)">solve(int, UnivariateDifferentiableFunction, double, double)</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/NewtonRaphsonSolver.html" title="class in org.apache.commons.math3.analysis.solvers">NewtonRaphsonSolver</a></dt>
<dd>
<div class="block">Find a zero near the midpoint of <code>min</code> and <code>max</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/NewtonSolver.html#solve(int, org.apache.commons.math3.analysis.DifferentiableUnivariateFunction, double, double)">solve(int, DifferentiableUnivariateFunction, double, double)</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/NewtonSolver.html" title="class in org.apache.commons.math3.analysis.solvers">NewtonSolver</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Find a zero near the midpoint of <code>min</code> and <code>max</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/UnivariateSolverUtils.html#solve(org.apache.commons.math3.analysis.UnivariateFunction, double, double)">solve(UnivariateFunction, double, double)</a></span> - Static method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/UnivariateSolverUtils.html" title="class in org.apache.commons.math3.analysis.solvers">UnivariateSolverUtils</a></dt>
<dd>
<div class="block">Convenience method to find a zero of a univariate real function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/UnivariateSolverUtils.html#solve(org.apache.commons.math3.analysis.UnivariateFunction, double, double, double)">solve(UnivariateFunction, double, double, double)</a></span> - Static method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/UnivariateSolverUtils.html" title="class in org.apache.commons.math3.analysis.solvers">UnivariateSolverUtils</a></dt>
<dd>
<div class="block">Convenience method to find a zero of a univariate real function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/BracketingNthOrderBrentSolverDFP.html#solve(int, org.apache.commons.math3.dfp.UnivariateDfpFunction, org.apache.commons.math3.dfp.Dfp, org.apache.commons.math3.dfp.Dfp, org.apache.commons.math3.analysis.solvers.AllowedSolution)">solve(int, UnivariateDfpFunction, Dfp, Dfp, AllowedSolution)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/BracketingNthOrderBrentSolverDFP.html" title="class in org.apache.commons.math3.dfp">BracketingNthOrderBrentSolverDFP</a></dt>
<dd>
<div class="block">Solve for a zero in the given interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/BracketingNthOrderBrentSolverDFP.html#solve(int, org.apache.commons.math3.dfp.UnivariateDfpFunction, org.apache.commons.math3.dfp.Dfp, org.apache.commons.math3.dfp.Dfp, org.apache.commons.math3.dfp.Dfp, org.apache.commons.math3.analysis.solvers.AllowedSolution)">solve(int, UnivariateDfpFunction, Dfp, Dfp, Dfp, AllowedSolution)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/BracketingNthOrderBrentSolverDFP.html" title="class in org.apache.commons.math3.dfp">BracketingNthOrderBrentSolverDFP</a></dt>
<dd>
<div class="block">Solve for a zero in the given interval, start at <code>startValue</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/GaussNewtonOptimizer.Decomposition.html#solve(org.apache.commons.math3.linear.RealMatrix, org.apache.commons.math3.linear.RealVector)">solve(RealMatrix, RealVector)</a></span> - Method in enum org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/GaussNewtonOptimizer.Decomposition.html" title="enum in org.apache.commons.math3.fitting.leastsquares">GaussNewtonOptimizer.Decomposition</a></dt>
<dd>
<div class="block">Solve the linear least squares problem Jx=r.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DecompositionSolver.html#solve(org.apache.commons.math3.linear.RealVector)">solve(RealVector)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DecompositionSolver.html" title="interface in org.apache.commons.math3.linear">DecompositionSolver</a></dt>
<dd>
<div class="block">Solve the linear equation A &times; X = B for matrices A.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DecompositionSolver.html#solve(org.apache.commons.math3.linear.RealMatrix)">solve(RealMatrix)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DecompositionSolver.html" title="interface in org.apache.commons.math3.linear">DecompositionSolver</a></dt>
<dd>
<div class="block">Solve the linear equation A &times; X = B for matrices A.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldDecompositionSolver.html#solve(org.apache.commons.math3.linear.FieldVector)">solve(FieldVector&lt;T&gt;)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldDecompositionSolver.html" title="interface in org.apache.commons.math3.linear">FieldDecompositionSolver</a></dt>
<dd>
<div class="block">Solve the linear equation A &times; X = B for matrices A.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldDecompositionSolver.html#solve(org.apache.commons.math3.linear.FieldMatrix)">solve(FieldMatrix&lt;T&gt;)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldDecompositionSolver.html" title="interface in org.apache.commons.math3.linear">FieldDecompositionSolver</a></dt>
<dd>
<div class="block">Solve the linear equation A &times; X = B for matrices A.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/IterativeLinearSolver.html#solve(org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealVector)">solve(RealLinearOperator, RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/IterativeLinearSolver.html" title="class in org.apache.commons.math3.linear">IterativeLinearSolver</a></dt>
<dd>
<div class="block">Returns an estimate of the solution to the linear system A &middot; x =
 b.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/IterativeLinearSolver.html#solve(org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealVector, org.apache.commons.math3.linear.RealVector)">solve(RealLinearOperator, RealVector, RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/IterativeLinearSolver.html" title="class in org.apache.commons.math3.linear">IterativeLinearSolver</a></dt>
<dd>
<div class="block">Returns an estimate of the solution to the linear system A &middot; x =
 b.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/PreconditionedIterativeLinearSolver.html#solve(org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealVector, org.apache.commons.math3.linear.RealVector)">solve(RealLinearOperator, RealLinearOperator, RealVector, RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/PreconditionedIterativeLinearSolver.html" title="class in org.apache.commons.math3.linear">PreconditionedIterativeLinearSolver</a></dt>
<dd>
<div class="block">Returns an estimate of the solution to the linear system A &middot; x =
 b.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/PreconditionedIterativeLinearSolver.html#solve(org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealVector)">solve(RealLinearOperator, RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/PreconditionedIterativeLinearSolver.html" title="class in org.apache.commons.math3.linear">PreconditionedIterativeLinearSolver</a></dt>
<dd>
<div class="block">Returns an estimate of the solution to the linear system A &middot; x =
 b.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/PreconditionedIterativeLinearSolver.html#solve(org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealVector, org.apache.commons.math3.linear.RealVector)">solve(RealLinearOperator, RealVector, RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/PreconditionedIterativeLinearSolver.html" title="class in org.apache.commons.math3.linear">PreconditionedIterativeLinearSolver</a></dt>
<dd>
<div class="block">Returns an estimate of the solution to the linear system A &middot; x =
 b.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/PreconditionedIterativeLinearSolver.html#solve(org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealVector)">solve(RealLinearOperator, RealLinearOperator, RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/PreconditionedIterativeLinearSolver.html" title="class in org.apache.commons.math3.linear">PreconditionedIterativeLinearSolver</a></dt>
<dd>
<div class="block">Returns an estimate of the solution to the linear system A &middot; x =
 b.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SymmLQ.html#solve(org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealVector)">solve(RealLinearOperator, RealLinearOperator, RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SymmLQ.html" title="class in org.apache.commons.math3.linear">SymmLQ</a></dt>
<dd>
<div class="block">Returns an estimate of the solution to the linear system A &middot; x =
 b.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SymmLQ.html#solve(org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealVector, boolean, double)">solve(RealLinearOperator, RealLinearOperator, RealVector, boolean, double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SymmLQ.html" title="class in org.apache.commons.math3.linear">SymmLQ</a></dt>
<dd>
<div class="block">Returns an estimate of the solution to the linear system (A - shift
 &middot; I) &middot; x = b.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SymmLQ.html#solve(org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealVector, org.apache.commons.math3.linear.RealVector)">solve(RealLinearOperator, RealLinearOperator, RealVector, RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SymmLQ.html" title="class in org.apache.commons.math3.linear">SymmLQ</a></dt>
<dd>
<div class="block">Returns an estimate of the solution to the linear system A &middot; x =
 b.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SymmLQ.html#solve(org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealVector)">solve(RealLinearOperator, RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SymmLQ.html" title="class in org.apache.commons.math3.linear">SymmLQ</a></dt>
<dd>
<div class="block">Returns an estimate of the solution to the linear system A &middot; x =
 b.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SymmLQ.html#solve(org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealVector, boolean, double)">solve(RealLinearOperator, RealVector, boolean, double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SymmLQ.html" title="class in org.apache.commons.math3.linear">SymmLQ</a></dt>
<dd>
<div class="block">Returns the solution to the system (A - shift &middot; I) &middot; x = b.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SymmLQ.html#solve(org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealVector, org.apache.commons.math3.linear.RealVector)">solve(RealLinearOperator, RealVector, RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SymmLQ.html" title="class in org.apache.commons.math3.linear">SymmLQ</a></dt>
<dd>
<div class="block">Returns an estimate of the solution to the linear system A &middot; x =
 b.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/LaguerreSolver.html#solveAllComplex(double[], double)">solveAllComplex(double[], double)</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/LaguerreSolver.html" title="class in org.apache.commons.math3.analysis.solvers">LaguerreSolver</a></dt>
<dd>
<div class="block">Find all complex roots for the polynomial with the given
 coefficients, starting from the given initial value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/LaguerreSolver.html#solveComplex(double[], double)">solveComplex(double[], double)</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/LaguerreSolver.html" title="class in org.apache.commons.math3.analysis.solvers">LaguerreSolver</a></dt>
<dd>
<div class="block">Find a complex root for the polynomial with the given coefficients,
 starting from the given initial value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ConjugateGradient.html#solveInPlace(org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealVector, org.apache.commons.math3.linear.RealVector)">solveInPlace(RealLinearOperator, RealLinearOperator, RealVector, RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ConjugateGradient.html" title="class in org.apache.commons.math3.linear">ConjugateGradient</a></dt>
<dd>
<div class="block">Returns an estimate of the solution to the linear system A &middot; x =
 b.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/IterativeLinearSolver.html#solveInPlace(org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealVector, org.apache.commons.math3.linear.RealVector)">solveInPlace(RealLinearOperator, RealVector, RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/IterativeLinearSolver.html" title="class in org.apache.commons.math3.linear">IterativeLinearSolver</a></dt>
<dd>
<div class="block">Returns an estimate of the solution to the linear system A &middot; x =
 b.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/PreconditionedIterativeLinearSolver.html#solveInPlace(org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealVector, org.apache.commons.math3.linear.RealVector)">solveInPlace(RealLinearOperator, RealLinearOperator, RealVector, RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/PreconditionedIterativeLinearSolver.html" title="class in org.apache.commons.math3.linear">PreconditionedIterativeLinearSolver</a></dt>
<dd>
<div class="block">Returns an estimate of the solution to the linear system A &middot; x =
 b.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/PreconditionedIterativeLinearSolver.html#solveInPlace(org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealVector, org.apache.commons.math3.linear.RealVector)">solveInPlace(RealLinearOperator, RealVector, RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/PreconditionedIterativeLinearSolver.html" title="class in org.apache.commons.math3.linear">PreconditionedIterativeLinearSolver</a></dt>
<dd>
<div class="block">Returns an estimate of the solution to the linear system A &middot; x =
 b.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SymmLQ.html#solveInPlace(org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealVector, org.apache.commons.math3.linear.RealVector)">solveInPlace(RealLinearOperator, RealLinearOperator, RealVector, RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SymmLQ.html" title="class in org.apache.commons.math3.linear">SymmLQ</a></dt>
<dd>
<div class="block">Returns an estimate of the solution to the linear system A &middot; x =
 b.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SymmLQ.html#solveInPlace(org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealVector, org.apache.commons.math3.linear.RealVector, boolean, double)">solveInPlace(RealLinearOperator, RealLinearOperator, RealVector, RealVector, boolean, double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SymmLQ.html" title="class in org.apache.commons.math3.linear">SymmLQ</a></dt>
<dd>
<div class="block">Returns an estimate of the solution to the linear system (A - shift
 &middot; I) &middot; x = b.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SymmLQ.html#solveInPlace(org.apache.commons.math3.linear.RealLinearOperator, org.apache.commons.math3.linear.RealVector, org.apache.commons.math3.linear.RealVector)">solveInPlace(RealLinearOperator, RealVector, RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SymmLQ.html" title="class in org.apache.commons.math3.linear">SymmLQ</a></dt>
<dd>
<div class="block">Returns an estimate of the solution to the linear system A &middot; x =
 b.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/AbstractIntegerDistribution.html#solveInverseCumulativeProbability(double, int, int)">solveInverseCumulativeProbability(double, int, int)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/AbstractIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractIntegerDistribution</a></dt>
<dd>
<div class="block">This is a utility function used by <a href="./org/apache/commons/math3/distribution/AbstractIntegerDistribution.html#inverseCumulativeProbability(double)"><code>AbstractIntegerDistribution.inverseCumulativeProbability(double)</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#solveLowerTriangularSystem(org.apache.commons.math3.linear.RealMatrix, org.apache.commons.math3.linear.RealVector)">solveLowerTriangularSystem(RealMatrix, RealVector)</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Solve  a  system of composed of a Lower Triangular Matrix
 <a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear"><code>RealMatrix</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/SimplexSolver.html#solvePhase1(org.apache.commons.math3.optim.linear.SimplexTableau)">solvePhase1(SimplexTableau)</a></span> - Method in class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/SimplexSolver.html" title="class in org.apache.commons.math3.optim.linear">SimplexSolver</a></dt>
<dd>
<div class="block">Solves Phase 1 of the Simplex method.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/SimplexSolver.html#solvePhase1(org.apache.commons.math3.optimization.linear.SimplexTableau)">solvePhase1(SimplexTableau)</a></span> - Method in class org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/SimplexSolver.html" title="class in org.apache.commons.math3.optimization.linear">SimplexSolver</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Solves Phase 1 of the Simplex method.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/AbstractRealDistribution.html#SOLVER_DEFAULT_ABSOLUTE_ACCURACY">SOLVER_DEFAULT_ABSOLUTE_ACCURACY</a></span> - Static variable in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/AbstractRealDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractRealDistribution</a></dt>
<dd>
<div class="block">Default accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/MatrixUtils.html#solveUpperTriangularSystem(org.apache.commons.math3.linear.RealMatrix, org.apache.commons.math3.linear.RealVector)">solveUpperTriangularSystem(RealMatrix, RealVector)</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/MatrixUtils.html" title="class in org.apache.commons.math3.linear">MatrixUtils</a></dt>
<dd>
<div class="block">Solver a  system composed  of an Upper Triangular Matrix
 <a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear"><code>RealMatrix</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#sortInPlace(double[], double[]...)">sortInPlace(double[], double[]...)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Sort an array in ascending order in place and perform the same reordering
 of entries on other arrays.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#sortInPlace(double[], org.apache.commons.math3.util.MathArrays.OrderDirection, double[]...)">sortInPlace(double[], MathArrays.OrderDirection, double[]...)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">Sort an array in place and perform the same reordering of entries on
 other arrays.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/Space.html" title="interface in org.apache.commons.math3.geometry"><span class="strong">Space</span></a> - Interface in <a href="./org/apache/commons/math3/geometry/package-summary.html">org.apache.commons.math3.geometry</a></dt>
<dd>
<div class="block">This interface represents a generic space, with affine and vectorial counterparts.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/SparseFieldMatrix.html" title="class in org.apache.commons.math3.linear"><span class="strong">SparseFieldMatrix</span></a>&lt;<a href="./org/apache/commons/math3/linear/SparseFieldMatrix.html" title="type parameter in SparseFieldMatrix">T</a> extends <a href="./org/apache/commons/math3/FieldElement.html" title="interface in org.apache.commons.math3">FieldElement</a>&lt;<a href="./org/apache/commons/math3/linear/SparseFieldMatrix.html" title="type parameter in SparseFieldMatrix">T</a>&gt;&gt; - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Sparse matrix implementation based on an open addressed map.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldMatrix.html#SparseFieldMatrix(org.apache.commons.math3.Field)">SparseFieldMatrix(Field&lt;T&gt;)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldMatrix.html" title="class in org.apache.commons.math3.linear">SparseFieldMatrix</a></dt>
<dd>
<div class="block">Create a matrix with no data.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldMatrix.html#SparseFieldMatrix(org.apache.commons.math3.Field, int, int)">SparseFieldMatrix(Field&lt;T&gt;, int, int)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldMatrix.html" title="class in org.apache.commons.math3.linear">SparseFieldMatrix</a></dt>
<dd>
<div class="block">Create a new SparseFieldMatrix<T> with the supplied row and column
 dimensions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldMatrix.html#SparseFieldMatrix(org.apache.commons.math3.linear.SparseFieldMatrix)">SparseFieldMatrix(SparseFieldMatrix&lt;T&gt;)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldMatrix.html" title="class in org.apache.commons.math3.linear">SparseFieldMatrix</a></dt>
<dd>
<div class="block">Copy constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldMatrix.html#SparseFieldMatrix(org.apache.commons.math3.linear.FieldMatrix)">SparseFieldMatrix(FieldMatrix&lt;T&gt;)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldMatrix.html" title="class in org.apache.commons.math3.linear">SparseFieldMatrix</a></dt>
<dd>
<div class="block">Generic copy constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear"><span class="strong">SparseFieldVector</span></a>&lt;<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="type parameter in SparseFieldVector">T</a> extends <a href="./org/apache/commons/math3/FieldElement.html" title="interface in org.apache.commons.math3">FieldElement</a>&lt;<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="type parameter in SparseFieldVector">T</a>&gt;&gt; - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">This class implements the <a href="./org/apache/commons/math3/linear/FieldVector.html" title="interface in org.apache.commons.math3.linear"><code>FieldVector</code></a> interface with a <a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.html" title="class in org.apache.commons.math3.util"><code>OpenIntToFieldHashMap</code></a> backing store.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#SparseFieldVector(org.apache.commons.math3.Field)">SparseFieldVector(Field&lt;T&gt;)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Build a 0-length vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#SparseFieldVector(org.apache.commons.math3.Field, int)">SparseFieldVector(Field&lt;T&gt;, int)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Construct a vector of zeroes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#SparseFieldVector(org.apache.commons.math3.linear.SparseFieldVector, int)">SparseFieldVector(SparseFieldVector&lt;T&gt;, int)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Build a resized vector, for use with append.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#SparseFieldVector(org.apache.commons.math3.Field, int, int)">SparseFieldVector(Field&lt;T&gt;, int, int)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Build a vector with known the sparseness (for advanced use only).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#SparseFieldVector(org.apache.commons.math3.Field, T[])">SparseFieldVector(Field&lt;T&gt;, T[])</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Create from a Field array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#SparseFieldVector(org.apache.commons.math3.linear.SparseFieldVector)">SparseFieldVector(SparseFieldVector&lt;T&gt;)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Copy constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation"><span class="strong">SparseGradient</span></a> - Class in <a href="./org/apache/commons/math3/analysis/differentiation/package-summary.html">org.apache.commons.math3.analysis.differentiation</a></dt>
<dd>
<div class="block">First derivative computation with large number of variables.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#sparseIterator()">sparseIterator()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Create a sparse iterator over the vector, which may omit some entries.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#sparseIterator()">sparseIterator()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Create a sparse iterator over the vector, which may omit some entries.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/SparseRealMatrix.html" title="interface in org.apache.commons.math3.linear"><span class="strong">SparseRealMatrix</span></a> - Interface in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Marker interface for <a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear"><code>RealMatrix</code></a> implementations that require sparse backing storage</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/SparseRealVector.html" title="class in org.apache.commons.math3.linear"><span class="strong">SparseRealVector</span></a> - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">Marker class for RealVectors that require sparse backing storage</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseRealVector.html#SparseRealVector()">SparseRealVector()</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseRealVector.html" title="class in org.apache.commons.math3.linear">SparseRealVector</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/stat/correlation/SpearmansCorrelation.html" title="class in org.apache.commons.math3.stat.correlation"><span class="strong">SpearmansCorrelation</span></a> - Class in <a href="./org/apache/commons/math3/stat/correlation/package-summary.html">org.apache.commons.math3.stat.correlation</a></dt>
<dd>
<div class="block">Spearman's rank correlation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/SpearmansCorrelation.html#SpearmansCorrelation()">SpearmansCorrelation()</a></span> - Constructor for class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/SpearmansCorrelation.html" title="class in org.apache.commons.math3.stat.correlation">SpearmansCorrelation</a></dt>
<dd>
<div class="block">Create a SpearmansCorrelation without data.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/SpearmansCorrelation.html#SpearmansCorrelation(org.apache.commons.math3.stat.ranking.RankingAlgorithm)">SpearmansCorrelation(RankingAlgorithm)</a></span> - Constructor for class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/SpearmansCorrelation.html" title="class in org.apache.commons.math3.stat.correlation">SpearmansCorrelation</a></dt>
<dd>
<div class="block">Create a SpearmansCorrelation with the given ranking algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/SpearmansCorrelation.html#SpearmansCorrelation(org.apache.commons.math3.linear.RealMatrix)">SpearmansCorrelation(RealMatrix)</a></span> - Constructor for class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/SpearmansCorrelation.html" title="class in org.apache.commons.math3.stat.correlation">SpearmansCorrelation</a></dt>
<dd>
<div class="block">Create a SpearmansCorrelation from the given data matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/SpearmansCorrelation.html#SpearmansCorrelation(org.apache.commons.math3.linear.RealMatrix, org.apache.commons.math3.stat.ranking.RankingAlgorithm)">SpearmansCorrelation(RealMatrix, RankingAlgorithm)</a></span> - Constructor for class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/SpearmansCorrelation.html" title="class in org.apache.commons.math3.stat.correlation">SpearmansCorrelation</a></dt>
<dd>
<div class="block">Create a SpearmansCorrelation with the given input data matrix
 and ranking algorithm.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/spherical/oned/Sphere1D.html" title="class in org.apache.commons.math3.geometry.spherical.oned"><span class="strong">Sphere1D</span></a> - Class in <a href="./org/apache/commons/math3/geometry/spherical/oned/package-summary.html">org.apache.commons.math3.geometry.spherical.oned</a></dt>
<dd>
<div class="block">This class implements a one-dimensional sphere (i.e.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/spherical/oned/Sphere1D.NoSubSpaceException.html" title="class in org.apache.commons.math3.geometry.spherical.oned"><span class="strong">Sphere1D.NoSubSpaceException</span></a> - Exception in <a href="./org/apache/commons/math3/geometry/spherical/oned/package-summary.html">org.apache.commons.math3.geometry.spherical.oned</a></dt>
<dd>
<div class="block">Specialized exception for inexistent sub-space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/Sphere1D.NoSubSpaceException.html#Sphere1D.NoSubSpaceException()">Sphere1D.NoSubSpaceException()</a></span> - Constructor for exception org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/Sphere1D.NoSubSpaceException.html" title="class in org.apache.commons.math3.geometry.spherical.oned">Sphere1D.NoSubSpaceException</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/spherical/twod/Sphere2D.html" title="class in org.apache.commons.math3.geometry.spherical.twod"><span class="strong">Sphere2D</span></a> - Class in <a href="./org/apache/commons/math3/geometry/spherical/twod/package-summary.html">org.apache.commons.math3.geometry.spherical.twod</a></dt>
<dd>
<div class="block">This class implements a two-dimensional sphere (i.e.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/threed/SphereGenerator.html" title="class in org.apache.commons.math3.geometry.euclidean.threed"><span class="strong">SphereGenerator</span></a> - Class in <a href="./org/apache/commons/math3/geometry/euclidean/threed/package-summary.html">org.apache.commons.math3.geometry.euclidean.threed</a></dt>
<dd>
<div class="block">Class generating an enclosing ball from its support points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/SphereGenerator.html#SphereGenerator()">SphereGenerator()</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/SphereGenerator.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">SphereGenerator</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/threed/SphericalCoordinates.html" title="class in org.apache.commons.math3.geometry.euclidean.threed"><span class="strong">SphericalCoordinates</span></a> - Class in <a href="./org/apache/commons/math3/geometry/euclidean/threed/package-summary.html">org.apache.commons.math3.geometry.euclidean.threed</a></dt>
<dd>
<div class="block">This class provides conversions related to <a
 href="http://mathworld.wolfram.com/SphericalCoordinates.html">spherical coordinates</a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/SphericalCoordinates.html#SphericalCoordinates(org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">SphericalCoordinates(Vector3D)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/SphericalCoordinates.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">SphericalCoordinates</a></dt>
<dd>
<div class="block">Build a spherical coordinates transformer from Cartesian coordinates.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/SphericalCoordinates.html#SphericalCoordinates(double, double, double)">SphericalCoordinates(double, double, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/SphericalCoordinates.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">SphericalCoordinates</a></dt>
<dd>
<div class="block">Build a spherical coordinates transformer from spherical coordinates.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/spherical/twod/SphericalPolygonsSet.html" title="class in org.apache.commons.math3.geometry.spherical.twod"><span class="strong">SphericalPolygonsSet</span></a> - Class in <a href="./org/apache/commons/math3/geometry/spherical/twod/package-summary.html">org.apache.commons.math3.geometry.spherical.twod</a></dt>
<dd>
<div class="block">This class represents a region on the 2-sphere: a set of spherical polygons.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/SphericalPolygonsSet.html#SphericalPolygonsSet(double)">SphericalPolygonsSet(double)</a></span> - Constructor for class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/SphericalPolygonsSet.html" title="class in org.apache.commons.math3.geometry.spherical.twod">SphericalPolygonsSet</a></dt>
<dd>
<div class="block">Build a polygons set representing the whole real 2-sphere.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/SphericalPolygonsSet.html#SphericalPolygonsSet(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, double)">SphericalPolygonsSet(Vector3D, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/SphericalPolygonsSet.html" title="class in org.apache.commons.math3.geometry.spherical.twod">SphericalPolygonsSet</a></dt>
<dd>
<div class="block">Build a polygons set representing a hemisphere.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/SphericalPolygonsSet.html#SphericalPolygonsSet(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D, double, int, double)">SphericalPolygonsSet(Vector3D, Vector3D, double, int, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/SphericalPolygonsSet.html" title="class in org.apache.commons.math3.geometry.spherical.twod">SphericalPolygonsSet</a></dt>
<dd>
<div class="block">Build a polygons set representing a regular polygon.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/SphericalPolygonsSet.html#SphericalPolygonsSet(org.apache.commons.math3.geometry.partitioning.BSPTree, double)">SphericalPolygonsSet(BSPTree&lt;Sphere2D&gt;, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/SphericalPolygonsSet.html" title="class in org.apache.commons.math3.geometry.spherical.twod">SphericalPolygonsSet</a></dt>
<dd>
<div class="block">Build a polygons set from a BSP tree.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/SphericalPolygonsSet.html#SphericalPolygonsSet(java.util.Collection, double)">SphericalPolygonsSet(Collection&lt;SubHyperplane&lt;Sphere2D&gt;&gt;, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/SphericalPolygonsSet.html" title="class in org.apache.commons.math3.geometry.spherical.twod">SphericalPolygonsSet</a></dt>
<dd>
<div class="block">Build a polygons set from a Boundary REPresentation (B-rep).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/SphericalPolygonsSet.html#SphericalPolygonsSet(double, org.apache.commons.math3.geometry.spherical.twod.S2Point...)">SphericalPolygonsSet(double, S2Point...)</a></span> - Constructor for class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/SphericalPolygonsSet.html" title="class in org.apache.commons.math3.geometry.spherical.twod">SphericalPolygonsSet</a></dt>
<dd>
<div class="block">Build a polygon from a simple list of vertices.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/interpolation/SplineInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation"><span class="strong">SplineInterpolator</span></a> - Class in <a href="./org/apache/commons/math3/analysis/interpolation/package-summary.html">org.apache.commons.math3.analysis.interpolation</a></dt>
<dd>
<div class="block">Computes a natural (also known as "free", "unclamped") cubic spline interpolation for the data set.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/SplineInterpolator.html#SplineInterpolator()">SplineInterpolator()</a></span> - Constructor for class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/SplineInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">SplineInterpolator</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpMath.html#split(org.apache.commons.math3.dfp.DfpField, java.lang.String)">split(DfpField, String)</a></span> - Static method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpMath.html" title="class in org.apache.commons.math3.dfp">DfpMath</a></dt>
<dd>
<div class="block">Breaks a string representation up into two dfp's.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpMath.html#split(org.apache.commons.math3.dfp.Dfp)">split(Dfp)</a></span> - Static method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpMath.html" title="class in org.apache.commons.math3.dfp">DfpMath</a></dt>
<dd>
<div class="block">Splits a <a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp"><code>Dfp</code></a> into 2 <a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp"><code>Dfp</code></a>'s such that their sum is equal to the input <a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp"><code>Dfp</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/SubOrientedPoint.html#split(org.apache.commons.math3.geometry.partitioning.Hyperplane)">split(Hyperplane&lt;Euclidean1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/SubOrientedPoint.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">SubOrientedPoint</a></dt>
<dd>
<div class="block">Split the instance in two parts by an hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/SubPlane.html#split(org.apache.commons.math3.geometry.partitioning.Hyperplane)">split(Hyperplane&lt;Euclidean3D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/SubPlane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">SubPlane</a></dt>
<dd>
<div class="block">Split the instance in two parts by an hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/SubLine.html#split(org.apache.commons.math3.geometry.partitioning.Hyperplane)">split(Hyperplane&lt;Euclidean2D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/SubLine.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">SubLine</a></dt>
<dd>
<div class="block">Split the instance in two parts by an hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/AbstractSubHyperplane.html#split(org.apache.commons.math3.geometry.partitioning.Hyperplane)">split(Hyperplane&lt;S&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/AbstractSubHyperplane.html" title="class in org.apache.commons.math3.geometry.partitioning">AbstractSubHyperplane</a></dt>
<dd>
<div class="block">Split the instance in two parts by an hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html#split(org.apache.commons.math3.geometry.partitioning.SubHyperplane)">split(SubHyperplane&lt;S&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html" title="class in org.apache.commons.math3.geometry.partitioning">BSPTree</a></dt>
<dd>
<div class="block">Split a BSP tree by an external sub-hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/SubHyperplane.html#split(org.apache.commons.math3.geometry.partitioning.Hyperplane)">split(Hyperplane&lt;S&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/SubHyperplane.html" title="interface in org.apache.commons.math3.geometry.partitioning">SubHyperplane</a></dt>
<dd>
<div class="block">Split the instance in two parts by an hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/ArcsSet.html#split(org.apache.commons.math3.geometry.spherical.oned.Arc)">split(Arc)</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/ArcsSet.html" title="class in org.apache.commons.math3.geometry.spherical.oned">ArcsSet</a></dt>
<dd>
<div class="block">Split the instance in two parts by an arc.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/SubLimitAngle.html#split(org.apache.commons.math3.geometry.partitioning.Hyperplane)">split(Hyperplane&lt;Sphere1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/SubLimitAngle.html" title="class in org.apache.commons.math3.geometry.spherical.oned">SubLimitAngle</a></dt>
<dd>
<div class="block">Split the instance in two parts by an hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/SubCircle.html#split(org.apache.commons.math3.geometry.partitioning.Hyperplane)">split(Hyperplane&lt;Sphere2D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/SubCircle.html" title="class in org.apache.commons.math3.geometry.spherical.twod">SubCircle</a></dt>
<dd>
<div class="block">Split the instance in two parts by an hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpMath.html#splitDiv(org.apache.commons.math3.dfp.Dfp[], org.apache.commons.math3.dfp.Dfp[])">splitDiv(Dfp[], Dfp[])</a></span> - Static method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpMath.html" title="class in org.apache.commons.math3.dfp">DfpMath</a></dt>
<dd>
<div class="block">Divide two numbers that are split in to two pieces that are meant to be added together.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpMath.html#splitMult(org.apache.commons.math3.dfp.Dfp[], org.apache.commons.math3.dfp.Dfp[])">splitMult(Dfp[], Dfp[])</a></span> - Static method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpMath.html" title="class in org.apache.commons.math3.dfp">DfpMath</a></dt>
<dd>
<div class="block">Multiply two numbers that are split in to two pieces that are
  meant to be added together.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpMath.html#splitPow(org.apache.commons.math3.dfp.Dfp[], int)">splitPow(Dfp[], int)</a></span> - Static method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpMath.html" title="class in org.apache.commons.math3.dfp">DfpMath</a></dt>
<dd>
<div class="block">Raise a split base to the a power.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#sqrt()">sqrt()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Square root.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#sqrt()">sqrt()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Square root.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Sqrt.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Sqrt</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Square-root function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Sqrt.html#Sqrt()">Sqrt()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Sqrt.html" title="class in org.apache.commons.math3.analysis.function">Sqrt</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#sqrt()">sqrt()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Compute the
 <a href="http://mathworld.wolfram.com/SquareRoot.html" TARGET="_top">
 square root</a> of this complex number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#sqrt()">sqrt()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Compute the square root.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/JacobiPreconditioner.html#sqrt()">sqrt()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/JacobiPreconditioner.html" title="class in org.apache.commons.math3.linear">JacobiPreconditioner</a></dt>
<dd>
<div class="block">Returns the square root of <code>this</code> diagonal operator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#sqrt()">sqrt()</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Square root.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#sqrt()">sqrt()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Square root.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#sqrt(double)">sqrt(double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Compute the square root of a number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#sqrt1z()">sqrt1z()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Compute the
 <a href="http://mathworld.wolfram.com/SquareRoot.html" TARGET="_top">
 square root</a> of <code>1 - this<sup>2</sup></code> for this complex
 number.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/neuralnet/SquareNeighbourhood.html" title="enum in org.apache.commons.math3.ml.neuralnet"><span class="strong">SquareNeighbourhood</span></a> - Enum in <a href="./org/apache/commons/math3/ml/neuralnet/package-summary.html">org.apache.commons.math3.ml.neuralnet</a></dt>
<dd>
<div class="block">Defines neighbourhood types.</div>
</dd>
<dt><a href="./org/apache/commons/math3/random/StableRandomGenerator.html" title="class in org.apache.commons.math3.random"><span class="strong">StableRandomGenerator</span></a> - Class in <a href="./org/apache/commons/math3/random/package-summary.html">org.apache.commons.math3.random</a></dt>
<dd>
<div class="block">This class provides a stable normalized random generator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/StableRandomGenerator.html#StableRandomGenerator(org.apache.commons.math3.random.RandomGenerator, double, double)">StableRandomGenerator(RandomGenerator, double, double)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/StableRandomGenerator.html" title="class in org.apache.commons.math3.random">StableRandomGenerator</a></dt>
<dd>
<div class="block">Create a new generator.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html" title="class in org.apache.commons.math3.stat.descriptive.moment"><span class="strong">StandardDeviation</span></a> - Class in <a href="./org/apache/commons/math3/stat/descriptive/moment/package-summary.html">org.apache.commons.math3.stat.descriptive.moment</a></dt>
<dd>
<div class="block">Computes the sample standard deviation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html#StandardDeviation()">StandardDeviation()</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html" title="class in org.apache.commons.math3.stat.descriptive.moment">StandardDeviation</a></dt>
<dd>
<div class="block">Constructs a StandardDeviation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html#StandardDeviation(org.apache.commons.math3.stat.descriptive.moment.SecondMoment)">StandardDeviation(SecondMoment)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html" title="class in org.apache.commons.math3.stat.descriptive.moment">StandardDeviation</a></dt>
<dd>
<div class="block">Constructs a StandardDeviation from an external second moment.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html#StandardDeviation(org.apache.commons.math3.stat.descriptive.moment.StandardDeviation)">StandardDeviation(StandardDeviation)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html" title="class in org.apache.commons.math3.stat.descriptive.moment">StandardDeviation</a></dt>
<dd>
<div class="block">Copy constructor, creates a new <code>StandardDeviation</code> identical
 to the <code>original</code></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html#StandardDeviation(boolean)">StandardDeviation(boolean)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html" title="class in org.apache.commons.math3.stat.descriptive.moment">StandardDeviation</a></dt>
<dd>
<div class="block">Contructs a StandardDeviation with the specified value for the
 <code>isBiasCorrected</code> property.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html#StandardDeviation(boolean, org.apache.commons.math3.stat.descriptive.moment.SecondMoment)">StandardDeviation(boolean, SecondMoment)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/StandardDeviation.html" title="class in org.apache.commons.math3.stat.descriptive.moment">StandardDeviation</a></dt>
<dd>
<div class="block">Contructs a StandardDeviation with the specified value for the
 <code>isBiasCorrected</code> property and the supplied external moment.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresBuilder.html#start(org.apache.commons.math3.linear.RealVector)">start(RealVector)</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresBuilder.html" title="class in org.apache.commons.math3.fitting.leastsquares">LeastSquaresBuilder</a></dt>
<dd>
<div class="block">Configure the initial guess.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresBuilder.html#start(double[])">start(double[])</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresBuilder.html" title="class in org.apache.commons.math3.fitting.leastsquares">LeastSquaresBuilder</a></dt>
<dd>
<div class="block">Configure the initial guess.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DefaultFieldMatrixChangingVisitor.html#start(int, int, int, int, int, int)">start(int, int, int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DefaultFieldMatrixChangingVisitor.html" title="class in org.apache.commons.math3.linear">DefaultFieldMatrixChangingVisitor</a></dt>
<dd>
<div class="block">Start visiting a matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DefaultFieldMatrixPreservingVisitor.html#start(int, int, int, int, int, int)">start(int, int, int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DefaultFieldMatrixPreservingVisitor.html" title="class in org.apache.commons.math3.linear">DefaultFieldMatrixPreservingVisitor</a></dt>
<dd>
<div class="block">Start visiting a matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DefaultRealMatrixChangingVisitor.html#start(int, int, int, int, int, int)">start(int, int, int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DefaultRealMatrixChangingVisitor.html" title="class in org.apache.commons.math3.linear">DefaultRealMatrixChangingVisitor</a></dt>
<dd>
<div class="block">Start visiting a matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DefaultRealMatrixPreservingVisitor.html#start(int, int, int, int, int, int)">start(int, int, int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DefaultRealMatrixPreservingVisitor.html" title="class in org.apache.commons.math3.linear">DefaultRealMatrixPreservingVisitor</a></dt>
<dd>
<div class="block">Start visiting a matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrixChangingVisitor.html#start(int, int, int, int, int, int)">start(int, int, int, int, int, int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrixChangingVisitor.html" title="interface in org.apache.commons.math3.linear">FieldMatrixChangingVisitor</a></dt>
<dd>
<div class="block">Start visiting a matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrixPreservingVisitor.html#start(int, int, int, int, int, int)">start(int, int, int, int, int, int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrixPreservingVisitor.html" title="interface in org.apache.commons.math3.linear">FieldMatrixPreservingVisitor</a></dt>
<dd>
<div class="block">Start visiting a matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVectorChangingVisitor.html#start(int, int, int)">start(int, int, int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVectorChangingVisitor.html" title="interface in org.apache.commons.math3.linear">FieldVectorChangingVisitor</a></dt>
<dd>
<div class="block">Start visiting a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVectorPreservingVisitor.html#start(int, int, int)">start(int, int, int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVectorPreservingVisitor.html" title="interface in org.apache.commons.math3.linear">FieldVectorPreservingVisitor</a></dt>
<dd>
<div class="block">Start visiting a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrixChangingVisitor.html#start(int, int, int, int, int, int)">start(int, int, int, int, int, int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrixChangingVisitor.html" title="interface in org.apache.commons.math3.linear">RealMatrixChangingVisitor</a></dt>
<dd>
<div class="block">Start visiting a matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrixPreservingVisitor.html#start(int, int, int, int, int, int)">start(int, int, int, int, int, int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrixPreservingVisitor.html" title="interface in org.apache.commons.math3.linear">RealMatrixPreservingVisitor</a></dt>
<dd>
<div class="block">Start visiting a matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVectorChangingVisitor.html#start(int, int, int)">start(int, int, int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVectorChangingVisitor.html" title="interface in org.apache.commons.math3.linear">RealVectorChangingVisitor</a></dt>
<dd>
<div class="block">Start visiting a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVectorPreservingVisitor.html#start(int, int, int)">start(int, int, int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVectorPreservingVisitor.html" title="interface in org.apache.commons.math3.linear">RealVectorPreservingVisitor</a></dt>
<dd>
<div class="block">Start visiting a vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/MultistepIntegrator.html#start(double, double[], double)">start(double, double[], double)</a></span> - Method in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/MultistepIntegrator.html" title="class in org.apache.commons.math3.ode">MultistepIntegrator</a></dt>
<dd>
<div class="block">Start the integration.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#start()">start()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/NordsieckStepInterpolator.html#stateVariation">stateVariation</a></span> - Variable in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/NordsieckStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">NordsieckStepInterpolator</a></dt>
<dd>
<div class="block">State variation.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/StatisticalMultivariateSummary.html" title="interface in org.apache.commons.math3.stat.descriptive"><span class="strong">StatisticalMultivariateSummary</span></a> - Interface in <a href="./org/apache/commons/math3/stat/descriptive/package-summary.html">org.apache.commons.math3.stat.descriptive</a></dt>
<dd>
<div class="block">Reporting interface for basic multivariate statistics.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummary.html" title="interface in org.apache.commons.math3.stat.descriptive"><span class="strong">StatisticalSummary</span></a> - Interface in <a href="./org/apache/commons/math3/stat/descriptive/package-summary.html">org.apache.commons.math3.stat.descriptive</a></dt>
<dd>
<div class="block">Reporting interface for basic univariate statistics.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummaryValues.html" title="class in org.apache.commons.math3.stat.descriptive"><span class="strong">StatisticalSummaryValues</span></a> - Class in <a href="./org/apache/commons/math3/stat/descriptive/package-summary.html">org.apache.commons.math3.stat.descriptive</a></dt>
<dd>
<div class="block">Value object representing the results of a univariate statistical summary.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummaryValues.html#StatisticalSummaryValues(double, double, long, double, double, double)">StatisticalSummaryValues(double, double, long, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummaryValues.html" title="class in org.apache.commons.math3.stat.descriptive">StatisticalSummaryValues</a></dt>
<dd>
<div class="block">Constructor</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/StatUtils.html" title="class in org.apache.commons.math3.stat"><span class="strong">StatUtils</span></a> - Class in <a href="./org/apache/commons/math3/stat/package-summary.html">org.apache.commons.math3.stat</a></dt>
<dd>
<div class="block">StatUtils provides static methods for computing statistics based on data
 stored in double[] arrays.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/events/EventState.html#stepAccepted(double, double[])">stepAccepted(double, double[])</a></span> - Method in class org.apache.commons.math3.ode.events.<a href="./org/apache/commons/math3/ode/events/EventState.html" title="class in org.apache.commons.math3.ode.events">EventState</a></dt>
<dd>
<div class="block">Acknowledge the fact the step has been accepted by the integrator.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/StepFunction.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">StepFunction</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block"><a href="http://en.wikipedia.org/wiki/Step_function">
  Step function</a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/StepFunction.html#StepFunction(double[], double[])">StepFunction(double[], double[])</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/StepFunction.html" title="class in org.apache.commons.math3.analysis.function">StepFunction</a></dt>
<dd>
<div class="block">Builds a step function from a list of arguments and the corresponding
 values.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/sampling/StepHandler.html" title="interface in org.apache.commons.math3.ode.sampling"><span class="strong">StepHandler</span></a> - Interface in <a href="./org/apache/commons/math3/ode/sampling/package-summary.html">org.apache.commons.math3.ode.sampling</a></dt>
<dd>
<div class="block">This interface represents a handler that should be called after
 each successful step.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractIntegrator.html#stepHandlers">stepHandlers</a></span> - Variable in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractIntegrator.html" title="class in org.apache.commons.math3.ode">AbstractIntegrator</a></dt>
<dd>
<div class="block">Step handler.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/sampling/StepInterpolator.html" title="interface in org.apache.commons.math3.ode.sampling"><span class="strong">StepInterpolator</span></a> - Interface in <a href="./org/apache/commons/math3/ode/sampling/package-summary.html">org.apache.commons.math3.ode.sampling</a></dt>
<dd>
<div class="block">This interface represents an interpolator over the last step
 during an ODE integration.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/sampling/StepNormalizer.html" title="class in org.apache.commons.math3.ode.sampling"><span class="strong">StepNormalizer</span></a> - Class in <a href="./org/apache/commons/math3/ode/sampling/package-summary.html">org.apache.commons.math3.ode.sampling</a></dt>
<dd>
<div class="block">This class wraps an object implementing <a href="./org/apache/commons/math3/ode/sampling/FixedStepHandler.html" title="interface in org.apache.commons.math3.ode.sampling"><code>FixedStepHandler</code></a>
 into a <a href="./org/apache/commons/math3/ode/sampling/StepHandler.html" title="interface in org.apache.commons.math3.ode.sampling"><code>StepHandler</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/StepNormalizer.html#StepNormalizer(double, org.apache.commons.math3.ode.sampling.FixedStepHandler)">StepNormalizer(double, FixedStepHandler)</a></span> - Constructor for class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/StepNormalizer.html" title="class in org.apache.commons.math3.ode.sampling">StepNormalizer</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/StepNormalizer.html#StepNormalizer(double, org.apache.commons.math3.ode.sampling.FixedStepHandler, org.apache.commons.math3.ode.sampling.StepNormalizerMode)">StepNormalizer(double, FixedStepHandler, StepNormalizerMode)</a></span> - Constructor for class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/StepNormalizer.html" title="class in org.apache.commons.math3.ode.sampling">StepNormalizer</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/StepNormalizer.html#StepNormalizer(double, org.apache.commons.math3.ode.sampling.FixedStepHandler, org.apache.commons.math3.ode.sampling.StepNormalizerBounds)">StepNormalizer(double, FixedStepHandler, StepNormalizerBounds)</a></span> - Constructor for class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/StepNormalizer.html" title="class in org.apache.commons.math3.ode.sampling">StepNormalizer</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/StepNormalizer.html#StepNormalizer(double, org.apache.commons.math3.ode.sampling.FixedStepHandler, org.apache.commons.math3.ode.sampling.StepNormalizerMode, org.apache.commons.math3.ode.sampling.StepNormalizerBounds)">StepNormalizer(double, FixedStepHandler, StepNormalizerMode, StepNormalizerBounds)</a></span> - Constructor for class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/StepNormalizer.html" title="class in org.apache.commons.math3.ode.sampling">StepNormalizer</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/sampling/StepNormalizerBounds.html" title="enum in org.apache.commons.math3.ode.sampling"><span class="strong">StepNormalizerBounds</span></a> - Enum in <a href="./org/apache/commons/math3/ode/sampling/package-summary.html">org.apache.commons.math3.ode.sampling</a></dt>
<dd>
<div class="block"><a href="./org/apache/commons/math3/ode/sampling/StepNormalizer.html" title="class in org.apache.commons.math3.ode.sampling"><code>Step normalizer</code></a> bounds settings.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/sampling/StepNormalizerMode.html" title="enum in org.apache.commons.math3.ode.sampling"><span class="strong">StepNormalizerMode</span></a> - Enum in <a href="./org/apache/commons/math3/ode/sampling/package-summary.html">org.apache.commons.math3.ode.sampling</a></dt>
<dd>
<div class="block"><a href="./org/apache/commons/math3/ode/sampling/StepNormalizer.html" title="class in org.apache.commons.math3.ode.sampling"><code>Step normalizer</code></a> modes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractIntegrator.html#stepSize">stepSize</a></span> - Variable in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractIntegrator.html" title="class in org.apache.commons.math3.ode">AbstractIntegrator</a></dt>
<dd>
<div class="block">Current stepsize.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/AbstractIntegrator.html#stepStart">stepStart</a></span> - Variable in class org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/AbstractIntegrator.html" title="class in org.apache.commons.math3.ode">AbstractIntegrator</a></dt>
<dd>
<div class="block">Current step start time.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ArithmeticUtils.html#stirlingS2(int, int)">stirlingS2(int, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ArithmeticUtils.html" title="class in org.apache.commons.math3.util">ArithmeticUtils</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>use <a href="./org/apache/commons/math3/util/CombinatoricsUtils.html#stirlingS2(int, int)"><code>CombinatoricsUtils.stirlingS2(int, int)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/CombinatoricsUtils.html#stirlingS2(int, int)">stirlingS2(int, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/CombinatoricsUtils.html" title="class in org.apache.commons.math3.util">CombinatoricsUtils</a></dt>
<dd>
<div class="block">Returns the <a
 href="http://mathworld.wolfram.com/StirlingNumberoftheSecondKind.html">
 Stirling number of the second kind</a>, "<code>S(n,k)</code>", the number of
 ways of partitioning an <code>n</code>-element set into <code>k</code> non-empty
 subsets.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/events/EventState.html#stop()">stop()</a></span> - Method in class org.apache.commons.math3.ode.events.<a href="./org/apache/commons/math3/ode/events/EventState.html" title="class in org.apache.commons.math3.ode.events">EventState</a></dt>
<dd>
<div class="block">Check if the integration should be stopped at the end of the
 current step.</div>
</dd>
<dt><a href="./org/apache/commons/math3/genetics/StoppingCondition.html" title="interface in org.apache.commons.math3.genetics"><span class="strong">StoppingCondition</span></a> - Interface in <a href="./org/apache/commons/math3/genetics/package-summary.html">org.apache.commons.math3.genetics</a></dt>
<dd>
<div class="block">Algorithm used to determine when to stop evolution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/BaseMultiStartMultivariateOptimizer.html#store(PAIR)">store(PAIR)</a></span> - Method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/BaseMultiStartMultivariateOptimizer.html" title="class in org.apache.commons.math3.optim">BaseMultiStartMultivariateOptimizer</a></dt>
<dd>
<div class="block">Method that will be called in order to store each found optimum.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/MultiStartMultivariateOptimizer.html#store(org.apache.commons.math3.optim.PointValuePair)">store(PointValuePair)</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/MultiStartMultivariateOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar">MultiStartMultivariateOptimizer</a></dt>
<dd>
<div class="block">Method that will be called in order to store each found optimum.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/MultiStartMultivariateVectorOptimizer.html#store(org.apache.commons.math3.optim.PointVectorValuePair)">store(PointVectorValuePair)</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.vector.<a href="./org/apache/commons/math3/optim/nonlinear/vector/MultiStartMultivariateVectorOptimizer.html" title="class in org.apache.commons.math3.optim.nonlinear.vector">MultiStartMultivariateVectorOptimizer</a></dt>
<dd>
<div class="block">Method that will be called in order to store each found optimum.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/correlation/StorelessCovariance.html" title="class in org.apache.commons.math3.stat.correlation"><span class="strong">StorelessCovariance</span></a> - Class in <a href="./org/apache/commons/math3/stat/correlation/package-summary.html">org.apache.commons.math3.stat.correlation</a></dt>
<dd>
<div class="block">Covariance implementation that does not require input data to be
 stored in memory.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/StorelessCovariance.html#StorelessCovariance(int)">StorelessCovariance(int)</a></span> - Constructor for class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/StorelessCovariance.html" title="class in org.apache.commons.math3.stat.correlation">StorelessCovariance</a></dt>
<dd>
<div class="block">Create a bias corrected covariance matrix with a given dimension.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/correlation/StorelessCovariance.html#StorelessCovariance(int, boolean)">StorelessCovariance(int, boolean)</a></span> - Constructor for class org.apache.commons.math3.stat.correlation.<a href="./org/apache/commons/math3/stat/correlation/StorelessCovariance.html" title="class in org.apache.commons.math3.stat.correlation">StorelessCovariance</a></dt>
<dd>
<div class="block">Create a covariance matrix with a given number of rows and columns and the
 indicated bias correction.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/StorelessUnivariateStatistic.html" title="interface in org.apache.commons.math3.stat.descriptive"><span class="strong">StorelessUnivariateStatistic</span></a> - Interface in <a href="./org/apache/commons/math3/stat/descriptive/package-summary.html">org.apache.commons.math3.stat.descriptive</a></dt>
<dd>
<div class="block">Extends the definition of <a href="./org/apache/commons/math3/stat/descriptive/UnivariateStatistic.html" title="interface in org.apache.commons.math3.stat.descriptive"><code>UnivariateStatistic</code></a> with
 <a href="./org/apache/commons/math3/stat/descriptive/StorelessUnivariateStatistic.html#increment(double)"><code>StorelessUnivariateStatistic.increment(double)</code></a> and <a href="./org/apache/commons/math3/stat/descriptive/StorelessUnivariateStatistic.html#incrementAll(double[])"><code>StorelessUnivariateStatistic.incrementAll(double[])</code></a> methods for adding
 values and updating internal state.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#storeTime(double)">storeTime(double)</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">Store the current step time.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#strictlyNegative()">strictlyNegative()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Check if instance is strictly less than 0.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#strictlyPositive()">strictlyPositive()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Check if instance is strictly greater than 0.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ArithmeticUtils.html#subAndCheck(int, int)">subAndCheck(int, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ArithmeticUtils.html" title="class in org.apache.commons.math3.util">ArithmeticUtils</a></dt>
<dd>
<div class="block">Subtract two integers, checking for overflow.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ArithmeticUtils.html#subAndCheck(long, long)">subAndCheck(long, long)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ArithmeticUtils.html" title="class in org.apache.commons.math3.util">ArithmeticUtils</a></dt>
<dd>
<div class="block">Subtract two long integers, checking for overflow.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/spherical/twod/SubCircle.html" title="class in org.apache.commons.math3.geometry.spherical.twod"><span class="strong">SubCircle</span></a> - Class in <a href="./org/apache/commons/math3/geometry/spherical/twod/package-summary.html">org.apache.commons.math3.geometry.spherical.twod</a></dt>
<dd>
<div class="block">This class represents a sub-hyperplane for <a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html" title="class in org.apache.commons.math3.geometry.spherical.twod"><code>Circle</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/SubCircle.html#SubCircle(org.apache.commons.math3.geometry.partitioning.Hyperplane, org.apache.commons.math3.geometry.partitioning.Region)">SubCircle(Hyperplane&lt;Sphere2D&gt;, Region&lt;Sphere1D&gt;)</a></span> - Constructor for class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/SubCircle.html" title="class in org.apache.commons.math3.geometry.spherical.twod">SubCircle</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/partitioning/SubHyperplane.html" title="interface in org.apache.commons.math3.geometry.partitioning"><span class="strong">SubHyperplane</span></a>&lt;<a href="./org/apache/commons/math3/geometry/partitioning/SubHyperplane.html" title="type parameter in SubHyperplane">S</a> extends <a href="./org/apache/commons/math3/geometry/Space.html" title="interface in org.apache.commons.math3.geometry">Space</a>&gt; - Interface in <a href="./org/apache/commons/math3/geometry/partitioning/package-summary.html">org.apache.commons.math3.geometry.partitioning</a></dt>
<dd>
<div class="block">This interface represents the remaining parts of an hyperplane after
 other parts have been chopped off.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/partitioning/SubHyperplane.SplitSubHyperplane.html" title="class in org.apache.commons.math3.geometry.partitioning"><span class="strong">SubHyperplane.SplitSubHyperplane</span></a>&lt;<a href="./org/apache/commons/math3/geometry/partitioning/SubHyperplane.SplitSubHyperplane.html" title="type parameter in SubHyperplane.SplitSubHyperplane">U</a> extends <a href="./org/apache/commons/math3/geometry/Space.html" title="interface in org.apache.commons.math3.geometry">Space</a>&gt; - Class in <a href="./org/apache/commons/math3/geometry/partitioning/package-summary.html">org.apache.commons.math3.geometry.partitioning</a></dt>
<dd>
<div class="block">Class holding the results of the <a href="./org/apache/commons/math3/geometry/partitioning/SubHyperplane.html#split(org.apache.commons.math3.geometry.partitioning.Hyperplane)"><code>split</code></a> method.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/SubHyperplane.SplitSubHyperplane.html#SubHyperplane.SplitSubHyperplane(org.apache.commons.math3.geometry.partitioning.SubHyperplane, org.apache.commons.math3.geometry.partitioning.SubHyperplane)">SubHyperplane.SplitSubHyperplane(SubHyperplane&lt;U&gt;, SubHyperplane&lt;U&gt;)</a></span> - Constructor for class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/SubHyperplane.SplitSubHyperplane.html" title="class in org.apache.commons.math3.geometry.partitioning">SubHyperplane.SplitSubHyperplane</a></dt>
<dd>
<div class="block">Build a SplitSubHyperplane from its parts.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/spherical/oned/SubLimitAngle.html" title="class in org.apache.commons.math3.geometry.spherical.oned"><span class="strong">SubLimitAngle</span></a> - Class in <a href="./org/apache/commons/math3/geometry/spherical/oned/package-summary.html">org.apache.commons.math3.geometry.spherical.oned</a></dt>
<dd>
<div class="block">This class represents sub-hyperplane for <a href="./org/apache/commons/math3/geometry/spherical/oned/LimitAngle.html" title="class in org.apache.commons.math3.geometry.spherical.oned"><code>LimitAngle</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/SubLimitAngle.html#SubLimitAngle(org.apache.commons.math3.geometry.partitioning.Hyperplane, org.apache.commons.math3.geometry.partitioning.Region)">SubLimitAngle(Hyperplane&lt;Sphere1D&gt;, Region&lt;Sphere1D&gt;)</a></span> - Constructor for class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/SubLimitAngle.html" title="class in org.apache.commons.math3.geometry.spherical.oned">SubLimitAngle</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/threed/SubLine.html" title="class in org.apache.commons.math3.geometry.euclidean.threed"><span class="strong">SubLine</span></a> - Class in <a href="./org/apache/commons/math3/geometry/euclidean/threed/package-summary.html">org.apache.commons.math3.geometry.euclidean.threed</a></dt>
<dd>
<div class="block">This class represents a subset of a <a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.threed"><code>Line</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/SubLine.html#SubLine(org.apache.commons.math3.geometry.euclidean.threed.Line, org.apache.commons.math3.geometry.euclidean.oned.IntervalsSet)">SubLine(Line, IntervalsSet)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/SubLine.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">SubLine</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/SubLine.html#SubLine(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D, double)">SubLine(Vector3D, Vector3D, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/SubLine.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">SubLine</a></dt>
<dd>
<div class="block">Create a sub-line from two endpoints.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/SubLine.html#SubLine(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">SubLine(Vector3D, Vector3D)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/SubLine.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">SubLine</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.3, replaced with <a href="./org/apache/commons/math3/geometry/euclidean/threed/SubLine.html#SubLine(org.apache.commons.math3.geometry.euclidean.threed.Vector3D, org.apache.commons.math3.geometry.euclidean.threed.Vector3D, double)"><code>SubLine.SubLine(Vector3D, Vector3D, double)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/SubLine.html#SubLine(org.apache.commons.math3.geometry.euclidean.threed.Segment)">SubLine(Segment)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/SubLine.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">SubLine</a></dt>
<dd>
<div class="block">Create a sub-line from a segment.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/twod/SubLine.html" title="class in org.apache.commons.math3.geometry.euclidean.twod"><span class="strong">SubLine</span></a> - Class in <a href="./org/apache/commons/math3/geometry/euclidean/twod/package-summary.html">org.apache.commons.math3.geometry.euclidean.twod</a></dt>
<dd>
<div class="block">This class represents a sub-hyperplane for <a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod"><code>Line</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/SubLine.html#SubLine(org.apache.commons.math3.geometry.partitioning.Hyperplane, org.apache.commons.math3.geometry.partitioning.Region)">SubLine(Hyperplane&lt;Euclidean2D&gt;, Region&lt;Euclidean1D&gt;)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/SubLine.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">SubLine</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/SubLine.html#SubLine(org.apache.commons.math3.geometry.euclidean.twod.Vector2D, org.apache.commons.math3.geometry.euclidean.twod.Vector2D, double)">SubLine(Vector2D, Vector2D, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/SubLine.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">SubLine</a></dt>
<dd>
<div class="block">Create a sub-line from two endpoints.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/SubLine.html#SubLine(org.apache.commons.math3.geometry.euclidean.twod.Vector2D, org.apache.commons.math3.geometry.euclidean.twod.Vector2D)">SubLine(Vector2D, Vector2D)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/SubLine.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">SubLine</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.3, replaced with <a href="./org/apache/commons/math3/geometry/euclidean/twod/SubLine.html#SubLine(org.apache.commons.math3.geometry.euclidean.twod.Vector2D, org.apache.commons.math3.geometry.euclidean.twod.Vector2D, double)"><code>SubLine.SubLine(Vector2D, Vector2D, double)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/SubLine.html#SubLine(org.apache.commons.math3.geometry.euclidean.twod.Segment)">SubLine(Segment)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/SubLine.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">SubLine</a></dt>
<dd>
<div class="block">Create a sub-line from a segment.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/oned/SubOrientedPoint.html" title="class in org.apache.commons.math3.geometry.euclidean.oned"><span class="strong">SubOrientedPoint</span></a> - Class in <a href="./org/apache/commons/math3/geometry/euclidean/oned/package-summary.html">org.apache.commons.math3.geometry.euclidean.oned</a></dt>
<dd>
<div class="block">This class represents sub-hyperplane for <a href="./org/apache/commons/math3/geometry/euclidean/oned/OrientedPoint.html" title="class in org.apache.commons.math3.geometry.euclidean.oned"><code>OrientedPoint</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/SubOrientedPoint.html#SubOrientedPoint(org.apache.commons.math3.geometry.partitioning.Hyperplane, org.apache.commons.math3.geometry.partitioning.Region)">SubOrientedPoint(Hyperplane&lt;Euclidean1D&gt;, Region&lt;Euclidean1D&gt;)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/SubOrientedPoint.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">SubOrientedPoint</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/threed/SubPlane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed"><span class="strong">SubPlane</span></a> - Class in <a href="./org/apache/commons/math3/geometry/euclidean/threed/package-summary.html">org.apache.commons.math3.geometry.euclidean.threed</a></dt>
<dd>
<div class="block">This class represents a sub-hyperplane for <a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed"><code>Plane</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/SubPlane.html#SubPlane(org.apache.commons.math3.geometry.partitioning.Hyperplane, org.apache.commons.math3.geometry.partitioning.Region)">SubPlane(Hyperplane&lt;Euclidean3D&gt;, Region&lt;Euclidean2D&gt;)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/SubPlane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">SubPlane</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.html#substituteMostRecentElement(double)">substituteMostRecentElement(double)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.html" title="class in org.apache.commons.math3.util">ResizableDoubleArray</a></dt>
<dd>
<div class="block">Substitutes <code>value</code> for the most recently added value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#subtract(double)">subtract(double)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">'-' operator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#subtract(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">subtract(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Compute this - a.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#subtract(double[], int, double[], int, double[], int)">subtract(double[], int, double[], int, double[], int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Perform subtraction of two derivative structures.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#subtract(org.apache.commons.math3.analysis.differentiation.SparseGradient)">subtract(SparseGradient)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Compute this - a.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#subtract(double)">subtract(double)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">'-' operator.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Subtract.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Subtract</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Subtract the second operand from the first.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Subtract.html#Subtract()">Subtract()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Subtract.html" title="class in org.apache.commons.math3.analysis.function">Subtract</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.html#subtract(org.apache.commons.math3.analysis.polynomials.PolynomialFunction)">subtract(PolynomialFunction)</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunction</a></dt>
<dd>
<div class="block">Subtract a polynomial from the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#subtract(org.apache.commons.math3.complex.Complex)">subtract(Complex)</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Returns a <code>Complex</code> whose value is
 <code>(this - subtrahend)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#subtract(double)">subtract(double)</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Returns a <code>Complex</code> whose value is
 <code>(this - subtrahend)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Quaternion.html#subtract(org.apache.commons.math3.complex.Quaternion, org.apache.commons.math3.complex.Quaternion)">subtract(Quaternion, Quaternion)</a></span> - Static method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex">Quaternion</a></dt>
<dd>
<div class="block">Subtracts two quaternions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Quaternion.html#subtract(org.apache.commons.math3.complex.Quaternion)">subtract(Quaternion)</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex">Quaternion</a></dt>
<dd>
<div class="block">Subtracts a quaternion from the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#subtract(org.apache.commons.math3.dfp.Dfp)">subtract(Dfp)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Subtract x from this.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#subtract(double)">subtract(double)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">'-' operator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/FieldElement.html#subtract(T)">subtract(T)</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/FieldElement.html" title="interface in org.apache.commons.math3">FieldElement</a></dt>
<dd>
<div class="block">Compute this - a.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#subtract(java.math.BigInteger)">subtract(BigInteger)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Subtracts the value of an <a href="http://docs.oracle.com/javase/6/docs/api/java/math/BigInteger.html?is-external=true" title="class or interface in java.math"><code>BigInteger</code></a> from the value of this
 <code>BigFraction</code>, returning the result in reduced form.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#subtract(int)">subtract(int)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Subtracts the value of an <code>integer</code> from the value of this
 <code>BigFraction</code>, returning the result in reduced form.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#subtract(long)">subtract(long)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Subtracts the value of a <code>long</code> from the value of this
 <code>BigFraction</code>, returning the result in reduced form.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#subtract(org.apache.commons.math3.fraction.BigFraction)">subtract(BigFraction)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Subtracts the value of another fraction from the value of this one,
 returning the result in reduced form.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#subtract(org.apache.commons.math3.fraction.Fraction)">subtract(Fraction)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">Subtracts the value of another fraction from the value of this one,
 returning the result in reduced form.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#subtract(int)">subtract(int)</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">Subtract an integer from the fraction.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#subtract(org.apache.commons.math3.geometry.Vector)">subtract(Vector&lt;Euclidean1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Subtract a vector from the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#subtract(double, org.apache.commons.math3.geometry.Vector)">subtract(double, Vector&lt;Euclidean1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Subtract a scaled vector from the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#subtract(org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">subtract(FieldVector3D&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Subtract a vector from the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#subtract(org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">subtract(Vector3D)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Subtract a vector from the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#subtract(T, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">subtract(T, FieldVector3D&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Subtract a scaled vector from the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#subtract(T, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">subtract(T, Vector3D)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Subtract a scaled vector from the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#subtract(double, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D)">subtract(double, FieldVector3D&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Subtract a scaled vector from the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#subtract(double, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">subtract(double, Vector3D)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Subtract a scaled vector from the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#subtract(org.apache.commons.math3.geometry.Vector)">subtract(Vector&lt;Euclidean3D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Subtract a vector from the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#subtract(double, org.apache.commons.math3.geometry.Vector)">subtract(double, Vector&lt;Euclidean3D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Subtract a scaled vector from the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#subtract(org.apache.commons.math3.geometry.Vector)">subtract(Vector&lt;Euclidean2D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Subtract a vector from the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#subtract(double, org.apache.commons.math3.geometry.Vector)">subtract(double, Vector&lt;Euclidean2D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Subtract a scaled vector from the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/Vector.html#subtract(org.apache.commons.math3.geometry.Vector)">subtract(Vector&lt;S&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/Vector.html" title="interface in org.apache.commons.math3.geometry">Vector</a></dt>
<dd>
<div class="block">Subtract a vector from the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/Vector.html#subtract(double, org.apache.commons.math3.geometry.Vector)">subtract(double, Vector&lt;S&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/Vector.html" title="interface in org.apache.commons.math3.geometry">Vector</a></dt>
<dd>
<div class="block">Subtract a scaled vector from the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#subtract(org.apache.commons.math3.linear.FieldMatrix)">subtract(FieldMatrix&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Subtract <code>m</code> from this matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#subtract(org.apache.commons.math3.linear.RealMatrix)">subtract(RealMatrix)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Returns <code>this</code> minus <code>m</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html#subtract(org.apache.commons.math3.linear.Array2DRowFieldMatrix)">subtract(Array2DRowFieldMatrix&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowFieldMatrix</a></dt>
<dd>
<div class="block">Subtract <code>m</code> from this matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html#subtract(org.apache.commons.math3.linear.Array2DRowRealMatrix)">subtract(Array2DRowRealMatrix)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowRealMatrix</a></dt>
<dd>
<div class="block">Returns <code>this</code> minus <code>m</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#subtract(org.apache.commons.math3.linear.FieldVector)">subtract(FieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Compute <code>this</code> minus <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#subtract(org.apache.commons.math3.linear.ArrayFieldVector)">subtract(ArrayFieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Compute <code>this</code> minus <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#subtract(org.apache.commons.math3.linear.RealVector)">subtract(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Subtract <code>v</code> from this vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#subtract(org.apache.commons.math3.linear.FieldMatrix)">subtract(FieldMatrix&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Subtract <code>m</code> from this matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#subtract(org.apache.commons.math3.linear.BlockFieldMatrix)">subtract(BlockFieldMatrix&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Compute <code>this - m</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#subtract(org.apache.commons.math3.linear.RealMatrix)">subtract(RealMatrix)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Returns <code>this</code> minus <code>m</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#subtract(org.apache.commons.math3.linear.BlockRealMatrix)">subtract(BlockRealMatrix)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Subtract <code>m</code> from this matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DiagonalMatrix.html#subtract(org.apache.commons.math3.linear.DiagonalMatrix)">subtract(DiagonalMatrix)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DiagonalMatrix.html" title="class in org.apache.commons.math3.linear">DiagonalMatrix</a></dt>
<dd>
<div class="block">Returns <code>this</code> minus <code>m</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#subtract(org.apache.commons.math3.linear.FieldMatrix)">subtract(FieldMatrix&lt;T&gt;)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Subtract <code>m</code> from this matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVector.html#subtract(org.apache.commons.math3.linear.FieldVector)">subtract(FieldVector&lt;T&gt;)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVector.html" title="interface in org.apache.commons.math3.linear">FieldVector</a></dt>
<dd>
<div class="block">Compute <code>this</code> minus <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealMatrix.html#subtract(org.apache.commons.math3.linear.RealMatrix)">subtract(RealMatrix)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealMatrix.html" title="class in org.apache.commons.math3.linear">OpenMapRealMatrix</a></dt>
<dd>
<div class="block">Returns <code>this</code> minus <code>m</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealMatrix.html#subtract(org.apache.commons.math3.linear.OpenMapRealMatrix)">subtract(OpenMapRealMatrix)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealMatrix.html" title="class in org.apache.commons.math3.linear">OpenMapRealMatrix</a></dt>
<dd>
<div class="block">Subtract <code>m</code> from this matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#subtract(org.apache.commons.math3.linear.OpenMapRealVector)">subtract(OpenMapRealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Optimized method to subtract OpenMapRealVectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#subtract(org.apache.commons.math3.linear.RealVector)">subtract(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Subtract <code>v</code> from this vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#subtract(org.apache.commons.math3.linear.RealMatrix)">subtract(RealMatrix)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Returns <code>this</code> minus <code>m</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#subtract(org.apache.commons.math3.linear.RealVector)">subtract(RealVector)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Subtract <code>v</code> from this vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#subtract(org.apache.commons.math3.linear.SparseFieldVector)">subtract(SparseFieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Optimized method to compute <code>this</code> minus <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#subtract(org.apache.commons.math3.linear.FieldVector)">subtract(FieldVector&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Compute <code>this</code> minus <code>v</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#subtract(double)">subtract(double)</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">'-' operator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#subtract(org.apache.commons.math3.util.BigReal)">subtract(BigReal)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dd>
<div class="block">Compute this - a.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#subtract(org.apache.commons.math3.util.Decimal64)">subtract(Decimal64)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Compute this - a.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#subtract(double)">subtract(double)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">'-' operator.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/summary/Sum.html" title="class in org.apache.commons.math3.stat.descriptive.summary"><span class="strong">Sum</span></a> - Class in <a href="./org/apache/commons/math3/stat/descriptive/summary/package-summary.html">org.apache.commons.math3.stat.descriptive.summary</a></dt>
<dd>
<div class="block">Returns the sum of the available values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/Sum.html#Sum()">Sum()</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/Sum.html" title="class in org.apache.commons.math3.stat.descriptive.summary">Sum</a></dt>
<dd>
<div class="block">Create a Sum instance</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/Sum.html#Sum(org.apache.commons.math3.stat.descriptive.summary.Sum)">Sum(Sum)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/Sum.html" title="class in org.apache.commons.math3.stat.descriptive.summary">Sum</a></dt>
<dd>
<div class="block">Copy constructor, creates a new <code>Sum</code> identical
 to the <code>original</code></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/StatUtils.html#sum(double[])">sum(double[])</a></span> - Static method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/StatUtils.html" title="class in org.apache.commons.math3.stat">StatUtils</a></dt>
<dd>
<div class="block">Returns the sum of the values in the input array, or
 <code>Double.NaN</code> if the array is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/StatUtils.html#sum(double[], int, int)">sum(double[], int, int)</a></span> - Static method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/StatUtils.html" title="class in org.apache.commons.math3.stat">StatUtils</a></dt>
<dd>
<div class="block">Returns the sum of the entries in the specified portion of
 the input array, or <code>Double.NaN</code> if the designated subarray
 is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/StatUtils.html#sumDifference(double[], double[])">sumDifference(double[], double[])</a></span> - Static method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/StatUtils.html" title="class in org.apache.commons.math3.stat">StatUtils</a></dt>
<dd>
<div class="block">Returns the sum of the (signed) differences between corresponding elements of the
 input arrays -- i.e., sum(sample1[i] - sample2[i]).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/StatUtils.html#sumLog(double[])">sumLog(double[])</a></span> - Static method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/StatUtils.html" title="class in org.apache.commons.math3.stat">StatUtils</a></dt>
<dd>
<div class="block">Returns the sum of the natural logs of the entries in the input array, or
 <code>Double.NaN</code> if the array is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/StatUtils.html#sumLog(double[], int, int)">sumLog(double[], int, int)</a></span> - Static method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/StatUtils.html" title="class in org.apache.commons.math3.stat">StatUtils</a></dt>
<dd>
<div class="block">Returns the sum of the natural logs of the entries in the specified portion of
 the input array, or <code>Double.NaN</code> if the designated subarray
 is empty.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive"><span class="strong">SummaryStatistics</span></a> - Class in <a href="./org/apache/commons/math3/stat/descriptive/package-summary.html">org.apache.commons.math3.stat.descriptive</a></dt>
<dd>
<div class="block">
 Computes summary statistics for a stream of data values added using the
 <a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#addValue(double)"><code>addValue</code></a> method.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#SummaryStatistics()">SummaryStatistics()</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">Construct a SummaryStatistics instance</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#SummaryStatistics(org.apache.commons.math3.stat.descriptive.SummaryStatistics)">SummaryStatistics(SummaryStatistics)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">A copy constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/clustering/evaluation/SumOfClusterVariances.html" title="class in org.apache.commons.math3.ml.clustering.evaluation"><span class="strong">SumOfClusterVariances</span></a>&lt;<a href="./org/apache/commons/math3/ml/clustering/evaluation/SumOfClusterVariances.html" title="type parameter in SumOfClusterVariances">T</a> extends <a href="./org/apache/commons/math3/ml/clustering/Clusterable.html" title="interface in org.apache.commons.math3.ml.clustering">Clusterable</a>&gt; - Class in <a href="./org/apache/commons/math3/ml/clustering/evaluation/package-summary.html">org.apache.commons.math3.ml.clustering.evaluation</a></dt>
<dd>
<div class="block">Computes the sum of intra-cluster distance variances according to the formula:</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/evaluation/SumOfClusterVariances.html#SumOfClusterVariances(org.apache.commons.math3.ml.distance.DistanceMeasure)">SumOfClusterVariances(DistanceMeasure)</a></span> - Constructor for class org.apache.commons.math3.ml.clustering.evaluation.<a href="./org/apache/commons/math3/ml/clustering/evaluation/SumOfClusterVariances.html" title="class in org.apache.commons.math3.ml.clustering.evaluation">SumOfClusterVariances</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfLogs.html" title="class in org.apache.commons.math3.stat.descriptive.summary"><span class="strong">SumOfLogs</span></a> - Class in <a href="./org/apache/commons/math3/stat/descriptive/summary/package-summary.html">org.apache.commons.math3.stat.descriptive.summary</a></dt>
<dd>
<div class="block">Returns the sum of the natural logs for this collection of values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfLogs.html#SumOfLogs()">SumOfLogs()</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfLogs.html" title="class in org.apache.commons.math3.stat.descriptive.summary">SumOfLogs</a></dt>
<dd>
<div class="block">Create a SumOfLogs instance</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfLogs.html#SumOfLogs(org.apache.commons.math3.stat.descriptive.summary.SumOfLogs)">SumOfLogs(SumOfLogs)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfLogs.html" title="class in org.apache.commons.math3.stat.descriptive.summary">SumOfLogs</a></dt>
<dd>
<div class="block">Copy constructor, creates a new <code>SumOfLogs</code> identical
 to the <code>original</code></div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfSquares.html" title="class in org.apache.commons.math3.stat.descriptive.summary"><span class="strong">SumOfSquares</span></a> - Class in <a href="./org/apache/commons/math3/stat/descriptive/summary/package-summary.html">org.apache.commons.math3.stat.descriptive.summary</a></dt>
<dd>
<div class="block">Returns the sum of the squares of the available values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfSquares.html#SumOfSquares()">SumOfSquares()</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfSquares.html" title="class in org.apache.commons.math3.stat.descriptive.summary">SumOfSquares</a></dt>
<dd>
<div class="block">Create a SumOfSquares instance</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfSquares.html#SumOfSquares(org.apache.commons.math3.stat.descriptive.summary.SumOfSquares)">SumOfSquares(SumOfSquares)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.summary.<a href="./org/apache/commons/math3/stat/descriptive/summary/SumOfSquares.html" title="class in org.apache.commons.math3.stat.descriptive.summary">SumOfSquares</a></dt>
<dd>
<div class="block">Copy constructor, creates a new <code>SumOfSquares</code> identical
 to the <code>original</code></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/StatUtils.html#sumSq(double[])">sumSq(double[])</a></span> - Static method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/StatUtils.html" title="class in org.apache.commons.math3.stat">StatUtils</a></dt>
<dd>
<div class="block">Returns the sum of the squares of the entries in the input array, or
 <code>Double.NaN</code> if the array is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/StatUtils.html#sumSq(double[], int, int)">sumSq(double[], int, int)</a></span> - Static method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/StatUtils.html" title="class in org.apache.commons.math3.stat">StatUtils</a></dt>
<dd>
<div class="block">Returns the sum of the squares of the entries in the specified portion of
 the input array, or <code>Double.NaN</code> if the designated subarray
 is empty.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/enclosing/SupportBallGenerator.html" title="interface in org.apache.commons.math3.geometry.enclosing"><span class="strong">SupportBallGenerator</span></a>&lt;<a href="./org/apache/commons/math3/geometry/enclosing/SupportBallGenerator.html" title="type parameter in SupportBallGenerator">S</a> extends <a href="./org/apache/commons/math3/geometry/Space.html" title="interface in org.apache.commons.math3.geometry">Space</a>,<a href="./org/apache/commons/math3/geometry/enclosing/SupportBallGenerator.html" title="type parameter in SupportBallGenerator">P</a> extends <a href="./org/apache/commons/math3/geometry/Point.html" title="interface in org.apache.commons.math3.geometry">Point</a>&lt;<a href="./org/apache/commons/math3/geometry/enclosing/SupportBallGenerator.html" title="type parameter in SupportBallGenerator">S</a>&gt;&gt; - Interface in <a href="./org/apache/commons/math3/geometry/enclosing/package-summary.html">org.apache.commons.math3.geometry.enclosing</a></dt>
<dd>
<div class="block">Interface for generating balls based on support points.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/integration/gauss/SymmetricGaussIntegrator.html" title="class in org.apache.commons.math3.analysis.integration.gauss"><span class="strong">SymmetricGaussIntegrator</span></a> - Class in <a href="./org/apache/commons/math3/analysis/integration/gauss/package-summary.html">org.apache.commons.math3.analysis.integration.gauss</a></dt>
<dd>
<div class="block">This class's implements <a href="./org/apache/commons/math3/analysis/integration/gauss/SymmetricGaussIntegrator.html#integrate(org.apache.commons.math3.analysis.UnivariateFunction)"><code>integrate</code></a>
 method assuming that the integral is symmetric about 0.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/gauss/SymmetricGaussIntegrator.html#SymmetricGaussIntegrator(double[], double[])">SymmetricGaussIntegrator(double[], double[])</a></span> - Constructor for class org.apache.commons.math3.analysis.integration.gauss.<a href="./org/apache/commons/math3/analysis/integration/gauss/SymmetricGaussIntegrator.html" title="class in org.apache.commons.math3.analysis.integration.gauss">SymmetricGaussIntegrator</a></dt>
<dd>
<div class="block">Creates an integrator from the given <code>points</code> and <code>weights</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/gauss/SymmetricGaussIntegrator.html#SymmetricGaussIntegrator(org.apache.commons.math3.util.Pair)">SymmetricGaussIntegrator(Pair&lt;double[], double[]&gt;)</a></span> - Constructor for class org.apache.commons.math3.analysis.integration.gauss.<a href="./org/apache/commons/math3/analysis/integration/gauss/SymmetricGaussIntegrator.html" title="class in org.apache.commons.math3.analysis.integration.gauss">SymmetricGaussIntegrator</a></dt>
<dd>
<div class="block">Creates an integrator from the given pair of points (first element of
 the pair) and weights (second element of the pair.</div>
</dd>
<dt><a href="./org/apache/commons/math3/linear/SymmLQ.html" title="class in org.apache.commons.math3.linear"><span class="strong">SymmLQ</span></a> - Class in <a href="./org/apache/commons/math3/linear/package-summary.html">org.apache.commons.math3.linear</a></dt>
<dd>
<div class="block">
 Implementation of the SYMMLQ iterative linear solver proposed by <a
 href="./org/apache/commons/math3/linear/#PAIG1975">Paige and Saunders (1975)</a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SymmLQ.html#SymmLQ(int, double, boolean)">SymmLQ(int, double, boolean)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SymmLQ.html" title="class in org.apache.commons.math3.linear">SymmLQ</a></dt>
<dd>
<div class="block">Creates a new instance of this class, with <a href="./org/apache/commons/math3/linear/#stopcrit">default
 stopping criterion</a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SymmLQ.html#SymmLQ(org.apache.commons.math3.util.IterationManager, double, boolean)">SymmLQ(IterationManager, double, boolean)</a></span> - Constructor for class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SymmLQ.html" title="class in org.apache.commons.math3.linear">SymmLQ</a></dt>
<dd>
<div class="block">Creates a new instance of this class, with <a href="./org/apache/commons/math3/linear/#stopcrit">default
 stopping criterion</a> and custom iteration manager.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive"><span class="strong">SynchronizedDescriptiveStatistics</span></a> - Class in <a href="./org/apache/commons/math3/stat/descriptive/package-summary.html">org.apache.commons.math3.stat.descriptive</a></dt>
<dd>
<div class="block">Implementation of
 <a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive"><code>DescriptiveStatistics</code></a> that
 is safe to use in a multithreaded environment.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html#SynchronizedDescriptiveStatistics()">SynchronizedDescriptiveStatistics()</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedDescriptiveStatistics</a></dt>
<dd>
<div class="block">Construct an instance with infinite window</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html#SynchronizedDescriptiveStatistics(int)">SynchronizedDescriptiveStatistics(int)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedDescriptiveStatistics</a></dt>
<dd>
<div class="block">Construct an instance with finite window</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html#SynchronizedDescriptiveStatistics(org.apache.commons.math3.stat.descriptive.SynchronizedDescriptiveStatistics)">SynchronizedDescriptiveStatistics(SynchronizedDescriptiveStatistics)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedDescriptiveStatistics</a></dt>
<dd>
<div class="block">A copy constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive"><span class="strong">SynchronizedMultivariateSummaryStatistics</span></a> - Class in <a href="./org/apache/commons/math3/stat/descriptive/package-summary.html">org.apache.commons.math3.stat.descriptive</a></dt>
<dd>
<div class="block">Implementation of
 <a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive"><code>MultivariateSummaryStatistics</code></a> that
 is safe to use in a multithreaded environment.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html#SynchronizedMultivariateSummaryStatistics(int, boolean)">SynchronizedMultivariateSummaryStatistics(int, boolean)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedMultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Construct a SynchronizedMultivariateSummaryStatistics instance</div>
</dd>
<dt><a href="./org/apache/commons/math3/random/SynchronizedRandomGenerator.html" title="class in org.apache.commons.math3.random"><span class="strong">SynchronizedRandomGenerator</span></a> - Class in <a href="./org/apache/commons/math3/random/package-summary.html">org.apache.commons.math3.random</a></dt>
<dd>
<div class="block">Any <a href="./org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random"><code>RandomGenerator</code></a> implementation can be thread-safe if it
 is used through an instance of this class.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/SynchronizedRandomGenerator.html#SynchronizedRandomGenerator(org.apache.commons.math3.random.RandomGenerator)">SynchronizedRandomGenerator(RandomGenerator)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/SynchronizedRandomGenerator.html" title="class in org.apache.commons.math3.random">SynchronizedRandomGenerator</a></dt>
<dd>
<div class="block">Creates a synchronized wrapper for the given <code>RandomGenerator</code>
 instance.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive"><span class="strong">SynchronizedSummaryStatistics</span></a> - Class in <a href="./org/apache/commons/math3/stat/descriptive/package-summary.html">org.apache.commons.math3.stat.descriptive</a></dt>
<dd>
<div class="block">Implementation of
 <a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive"><code>SummaryStatistics</code></a> that
 is safe to use in a multithreaded environment.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#SynchronizedSummaryStatistics()">SynchronizedSummaryStatistics()</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">Construct a SynchronizedSummaryStatistics instance</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#SynchronizedSummaryStatistics(org.apache.commons.math3.stat.descriptive.SynchronizedSummaryStatistics)">SynchronizedSummaryStatistics(SynchronizedSummaryStatistics)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">A copy constructor.</div>
</dd>
</dl>
<a name="_T_">
<!--   -->
</a>
<h2 class="title">T</h2>
<dl>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#t(double, double[])">t(double, double[])</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#t(double, org.apache.commons.math3.stat.descriptive.StatisticalSummary)">t(double, StatisticalSummary)</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#t(double[], double[])">t(double[], double[])</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#t(org.apache.commons.math3.stat.descriptive.StatisticalSummary, org.apache.commons.math3.stat.descriptive.StatisticalSummary)">t(StatisticalSummary, StatisticalSummary)</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TTest.html#t(double, double[])">t(double, double[])</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TTest.html" title="class in org.apache.commons.math3.stat.inference">TTest</a></dt>
<dd>
<div class="block">Computes a <a href="http://www.itl.nist.gov/div898/handbook/prc/section2/prc22.htm#formula">
 t statistic </a> given observed values and a comparison constant.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TTest.html#t(double, org.apache.commons.math3.stat.descriptive.StatisticalSummary)">t(double, StatisticalSummary)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TTest.html" title="class in org.apache.commons.math3.stat.inference">TTest</a></dt>
<dd>
<div class="block">Computes a <a href="http://www.itl.nist.gov/div898/handbook/prc/section2/prc22.htm#formula">
 t statistic </a> to use in comparing the mean of the dataset described by
 <code>sampleStats</code> to <code>mu</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TTest.html#t(double[], double[])">t(double[], double[])</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TTest.html" title="class in org.apache.commons.math3.stat.inference">TTest</a></dt>
<dd>
<div class="block">Computes a 2-sample t statistic, without the hypothesis of equal
 subpopulation variances.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TTest.html#t(org.apache.commons.math3.stat.descriptive.StatisticalSummary, org.apache.commons.math3.stat.descriptive.StatisticalSummary)">t(StatisticalSummary, StatisticalSummary)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TTest.html" title="class in org.apache.commons.math3.stat.inference">TTest</a></dt>
<dd>
<div class="block">Computes a 2-sample t statistic </a>, comparing the means of the datasets
 described by two <a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummary.html" title="interface in org.apache.commons.math3.stat.descriptive"><code>StatisticalSummary</code></a> instances, without the
 assumption of equal subpopulation variances.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TTest.html#t(double, double, double, double)">t(double, double, double, double)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TTest.html" title="class in org.apache.commons.math3.stat.inference">TTest</a></dt>
<dd>
<div class="block">Computes t test statistic for 1-sample t-test.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TTest.html#t(double, double, double, double, double, double)">t(double, double, double, double, double, double)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TTest.html" title="class in org.apache.commons.math3.stat.inference">TTest</a></dt>
<dd>
<div class="block">Computes t test statistic for 2-sample t-test.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#tan()">tan()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Tangent operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#tan(double[], int, double[], int)">tan(double[], int, double[], int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Compute tangent of a derivative structure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#tan()">tan()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Tangent operation.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Tan.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Tan</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Tangent function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Tan.html#Tan()">Tan()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Tan.html" title="class in org.apache.commons.math3.analysis.function">Tan</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#tan()">tan()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Compute the
 <a href="http://mathworld.wolfram.com/Tangent.html" TARGET="_top">
 tangent</a> of this complex number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#tan()">tan()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Tangent operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpMath.html#tan(org.apache.commons.math3.dfp.Dfp)">tan(Dfp)</a></span> - Static method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpMath.html" title="class in org.apache.commons.math3.dfp">DfpMath</a></dt>
<dd>
<div class="block">computes the tangent of the argument.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#tan()">tan()</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Tangent operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#tan()">tan()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Tangent operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#tan(double)">tan(double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Tangent function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#tanh()">tanh()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Hyperbolic tangent operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#tanh(double[], int, double[], int)">tanh(double[], int, double[], int)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Compute hyperbolic tangent of a derivative structure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#tanh()">tanh()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Hyperbolic tangent operation.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/function/Tanh.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Tanh</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block">Hyperbolic tangent function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Tanh.html#Tanh()">Tanh()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Tanh.html" title="class in org.apache.commons.math3.analysis.function">Tanh</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#tanh()">tanh()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Compute the
 <a href="http://mathworld.wolfram.com/HyperbolicTangent.html" TARGET="_top">
 hyperbolic tangent</a> of this complex number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#tanh()">tanh()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Hyperbolic tangent operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/RealFieldElement.html#tanh()">tanh()</a></span> - Method in interface org.apache.commons.math3.<a href="./org/apache/commons/math3/RealFieldElement.html" title="interface in org.apache.commons.math3">RealFieldElement</a></dt>
<dd>
<div class="block">Hyperbolic tangent operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#tanh()">tanh()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">Hyperbolic tangent operation.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#tanh(double)">tanh(double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Compute the hyperbolic tangent of a number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresBuilder.html#target(org.apache.commons.math3.linear.RealVector)">target(RealVector)</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresBuilder.html" title="class in org.apache.commons.math3.fitting.leastsquares">LeastSquaresBuilder</a></dt>
<dd>
<div class="block">Configure the observed data.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresBuilder.html#target(double[])">target(double[])</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresBuilder.html" title="class in org.apache.commons.math3.fitting.leastsquares">LeastSquaresBuilder</a></dt>
<dd>
<div class="block">Configure the observed data.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/vector/Target.html" title="class in org.apache.commons.math3.optim.nonlinear.vector"><span class="strong">Target</span></a> - Class in <a href="./org/apache/commons/math3/optim/nonlinear/vector/package-summary.html">org.apache.commons.math3.optim.nonlinear.vector</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>All classes and interfaces in this package are deprecated.
 The optimizers that were provided here were moved to the
 <a href="./org/apache/commons/math3/fitting/leastsquares/package-summary.html"><code>org.apache.commons.math3.fitting.leastsquares</code></a> package
 (cf. MATH-1008).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/Target.html#Target(double[])">Target(double[])</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.vector.<a href="./org/apache/commons/math3/optim/nonlinear/vector/Target.html" title="class in org.apache.commons.math3.optim.nonlinear.vector">Target</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optimization/Target.html" title="class in org.apache.commons.math3.optimization"><span class="strong">Target</span></a> - Class in <a href="./org/apache/commons/math3/optimization/package-summary.html">org.apache.commons.math3.optimization</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/Target.html#Target(double[])">Target(double[])</a></span> - Constructor for class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/Target.html" title="class in org.apache.commons.math3.optimization">Target</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#taylor(double...)">taylor(double...)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Evaluate Taylor expansion a derivative structure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html#taylor(double[], int, double...)">taylor(double[], int, double...)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DSCompiler.html" title="class in org.apache.commons.math3.analysis.differentiation">DSCompiler</a></dt>
<dd>
<div class="block">Evaluate Taylor expansion of a derivative structure.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#taylor(double...)">taylor(double...)</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Evaluate Taylor expansion of a sparse gradient.</div>
</dd>
<dt><a href="./org/apache/commons/math3/distribution/TDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">TDistribution</span></a> - Class in <a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a></dt>
<dd>
<div class="block">Implementation of Student's t-distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/TDistribution.html#TDistribution(double)">TDistribution(double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/TDistribution.html" title="class in org.apache.commons.math3.distribution">TDistribution</a></dt>
<dd>
<div class="block">Create a t distribution using the given degrees of freedom.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/TDistribution.html#TDistribution(double, double)">TDistribution(double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/TDistribution.html" title="class in org.apache.commons.math3.distribution">TDistribution</a></dt>
<dd>
<div class="block">Create a t distribution using the given degrees of freedom and the
 specified inverse cumulative probability absolute accuracy.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/TDistribution.html#TDistribution(org.apache.commons.math3.random.RandomGenerator, double)">TDistribution(RandomGenerator, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/TDistribution.html" title="class in org.apache.commons.math3.distribution">TDistribution</a></dt>
<dd>
<div class="block">Creates a t distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/TDistribution.html#TDistribution(org.apache.commons.math3.random.RandomGenerator, double, double)">TDistribution(RandomGenerator, double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/TDistribution.html" title="class in org.apache.commons.math3.distribution">TDistribution</a></dt>
<dd>
<div class="block">Creates a t distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/IterationListener.html#terminationPerformed(org.apache.commons.math3.util.IterationEvent)">terminationPerformed(IterationEvent)</a></span> - Method in interface org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/IterationListener.html" title="interface in org.apache.commons.math3.util">IterationListener</a></dt>
<dd>
<div class="block">Invoked after completion of the operations which occur after breaking out
 of the main iteration loop.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AbstractUnivariateStatistic.html#test(double[], int, int)">test(double[], int, int)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AbstractUnivariateStatistic.html" title="class in org.apache.commons.math3.stat.descriptive">AbstractUnivariateStatistic</a></dt>
<dd>
<div class="block">This method is used by <code>evaluate(double[], int, int)</code> methods
 to verify that the input parameters designate a subarray of positive length.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AbstractUnivariateStatistic.html#test(double[], int, int, boolean)">test(double[], int, int, boolean)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AbstractUnivariateStatistic.html" title="class in org.apache.commons.math3.stat.descriptive">AbstractUnivariateStatistic</a></dt>
<dd>
<div class="block">This method is used by <code>evaluate(double[], int, int)</code> methods
 to verify that the input parameters designate a subarray of positive length.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AbstractUnivariateStatistic.html#test(double[], double[], int, int)">test(double[], double[], int, int)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AbstractUnivariateStatistic.html" title="class in org.apache.commons.math3.stat.descriptive">AbstractUnivariateStatistic</a></dt>
<dd>
<div class="block">This method is used by <code>evaluate(double[], double[], int, int)</code> methods
 to verify that the begin and length parameters designate a subarray of positive length
 and the weights are all non-negative, non-NaN, finite, and not all zero.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/AbstractUnivariateStatistic.html#test(double[], double[], int, int, boolean)">test(double[], double[], int, int, boolean)</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/AbstractUnivariateStatistic.html" title="class in org.apache.commons.math3.stat.descriptive">AbstractUnivariateStatistic</a></dt>
<dd>
<div class="block">This method is used by <code>evaluate(double[], double[], int, int)</code> methods
 to verify that the begin and length parameters designate a subarray of positive length
 and the weights are all non-negative, non-NaN, finite, and not all zero.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference"><span class="strong">TestUtils</span></a> - Class in <a href="./org/apache/commons/math3/stat/inference/package-summary.html">org.apache.commons.math3.stat.inference</a></dt>
<dd>
<div class="block">A collection of static methods to create inference test instances or to
 perform inference tests.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#THREE_FIFTHS">THREE_FIFTHS</a></span> - Static variable in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">A fraction representing "3/5".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#THREE_FIFTHS">THREE_FIFTHS</a></span> - Static variable in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">A fraction representing "3/5".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#THREE_QUARTERS">THREE_QUARTERS</a></span> - Static variable in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">A fraction representing "3/4".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#THREE_QUARTERS">THREE_QUARTERS</a></span> - Static variable in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">A fraction representing "3/4".</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/nonstiff/ThreeEighthesIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff"><span class="strong">ThreeEighthesIntegrator</span></a> - Class in <a href="./org/apache/commons/math3/ode/nonstiff/package-summary.html">org.apache.commons.math3.ode.nonstiff</a></dt>
<dd>
<div class="block">This class implements the 3/8 fourth order Runge-Kutta
 integrator for Ordinary Differential Equations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/ThreeEighthesIntegrator.html#ThreeEighthesIntegrator(double)">ThreeEighthesIntegrator(double)</a></span> - Constructor for class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/ThreeEighthesIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">ThreeEighthesIntegrator</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/ranking/TiesStrategy.html" title="enum in org.apache.commons.math3.stat.ranking"><span class="strong">TiesStrategy</span></a> - Enum in <a href="./org/apache/commons/math3/stat/ranking/package-summary.html">org.apache.commons.math3.stat.ranking</a></dt>
<dd>
<div class="block">Strategies for handling tied values in rank transformations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#toArray()">toArray()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Get the vector coordinates as a dimension 3 array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#toArray()">toArray()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Get the vector coordinates as a dimension 3 array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#toArray()">toArray()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Get the vector coordinates as a dimension 2 array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#toArray()">toArray()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Convert the vector to a T array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#toArray()">toArray()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Convert the vector to an array of <code>double</code>s.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVector.html#toArray()">toArray()</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVector.html" title="interface in org.apache.commons.math3.linear">FieldVector</a></dt>
<dd>
<div class="block">Convert the vector to a T array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#toArray()">toArray()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Convert the vector to an array of <code>double</code>s.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#toArray()">toArray()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Convert the vector to an array of <code>double</code>s.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#toArray()">toArray()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Convert the vector to a T array.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#toBlocksLayout(T[][])">toBlocksLayout(T[][])</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Convert a data array from raw layout to blocks layout.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#toBlocksLayout(double[][])">toBlocksLayout(double[][])</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Convert a data array from raw layout to blocks layout.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/SphericalCoordinates.html#toCartesianGradient(double[])">toCartesianGradient(double[])</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/SphericalCoordinates.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">SphericalCoordinates</a></dt>
<dd>
<div class="block">Convert a gradient with respect to spherical coordinates into a gradient
 with respect to Cartesian coordinates.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/SphericalCoordinates.html#toCartesianHessian(double[][], double[])">toCartesianHessian(double[][], double[])</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/SphericalCoordinates.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">SphericalCoordinates</a></dt>
<dd>
<div class="block">Convert a Hessian with respect to spherical coordinates into a Hessian
 with respect to Cartesian coordinates.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#toDegrees()">toDegrees()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Convert radians to degrees, with error of less than 0.5 ULP</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#toDegrees()">toDegrees()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Convert radians to degrees, with error of less than 0.5 ULP</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#toDegrees(double)">toDegrees(double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Convert radians to degrees, with error of less than 0.5 ULP</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/FunctionUtils.html#toDifferentiableMultivariateFunction(org.apache.commons.math3.analysis.differentiation.MultivariateDifferentiableFunction)">toDifferentiableMultivariateFunction(MultivariateDifferentiableFunction)</a></span> - Static method in class org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/FunctionUtils.html" title="class in org.apache.commons.math3.analysis">FunctionUtils</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>this conversion method is temporary in version 3.1, as the <a href="./org/apache/commons/math3/analysis/DifferentiableMultivariateFunction.html" title="interface in org.apache.commons.math3.analysis"><code>DifferentiableMultivariateFunction</code></a> interface itself is deprecated</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/FunctionUtils.html#toDifferentiableMultivariateVectorFunction(org.apache.commons.math3.analysis.differentiation.MultivariateDifferentiableVectorFunction)">toDifferentiableMultivariateVectorFunction(MultivariateDifferentiableVectorFunction)</a></span> - Static method in class org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/FunctionUtils.html" title="class in org.apache.commons.math3.analysis">FunctionUtils</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>this conversion method is temporary in version 3.1, as the <a href="./org/apache/commons/math3/analysis/DifferentiableMultivariateVectorFunction.html" title="interface in org.apache.commons.math3.analysis"><code>DifferentiableMultivariateVectorFunction</code></a> interface itself is deprecated</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/FunctionUtils.html#toDifferentiableUnivariateFunction(org.apache.commons.math3.analysis.differentiation.UnivariateDifferentiableFunction)">toDifferentiableUnivariateFunction(UnivariateDifferentiableFunction)</a></span> - Static method in class org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/FunctionUtils.html" title="class in org.apache.commons.math3.analysis">FunctionUtils</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>this conversion method is temporary in version 3.1, as the <a href="./org/apache/commons/math3/analysis/DifferentiableUnivariateFunction.html" title="interface in org.apache.commons.math3.analysis"><code>DifferentiableUnivariateFunction</code></a> interface itself is deprecated</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#toDouble()">toDouble()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Convert the instance into a double.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/WeightedObservedPoints.html#toList()">toList()</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/WeightedObservedPoints.html" title="class in org.apache.commons.math3.fitting">WeightedObservedPoints</a></dt>
<dd>
<div class="block">Gets a <em>snapshot</em> of the observed points.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/FunctionUtils.html#toMultivariateDifferentiableFunction(org.apache.commons.math3.analysis.DifferentiableMultivariateFunction)">toMultivariateDifferentiableFunction(DifferentiableMultivariateFunction)</a></span> - Static method in class org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/FunctionUtils.html" title="class in org.apache.commons.math3.analysis">FunctionUtils</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>this conversion method is temporary in version 3.1, as the <a href="./org/apache/commons/math3/analysis/DifferentiableMultivariateFunction.html" title="interface in org.apache.commons.math3.analysis"><code>DifferentiableMultivariateFunction</code></a> interface itself is deprecated</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/FunctionUtils.html#toMultivariateDifferentiableVectorFunction(org.apache.commons.math3.analysis.DifferentiableMultivariateVectorFunction)">toMultivariateDifferentiableVectorFunction(DifferentiableMultivariateVectorFunction)</a></span> - Static method in class org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/FunctionUtils.html" title="class in org.apache.commons.math3.analysis">FunctionUtils</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>this conversion method is temporary in version 3.1, as the <a href="./org/apache/commons/math3/analysis/DifferentiableMultivariateFunction.html" title="interface in org.apache.commons.math3.analysis"><code>DifferentiableMultivariateFunction</code></a> interface itself is deprecated</i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/exception/TooManyEvaluationsException.html" title="class in org.apache.commons.math3.exception"><span class="strong">TooManyEvaluationsException</span></a> - Exception in <a href="./org/apache/commons/math3/exception/package-summary.html">org.apache.commons.math3.exception</a></dt>
<dd>
<div class="block">Exception to be thrown when the maximal number of evaluations is exceeded.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/TooManyEvaluationsException.html#TooManyEvaluationsException(java.lang.Number)">TooManyEvaluationsException(Number)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/TooManyEvaluationsException.html" title="class in org.apache.commons.math3.exception">TooManyEvaluationsException</a></dt>
<dd>
<div class="block">Construct the exception.</div>
</dd>
<dt><a href="./org/apache/commons/math3/exception/TooManyIterationsException.html" title="class in org.apache.commons.math3.exception"><span class="strong">TooManyIterationsException</span></a> - Exception in <a href="./org/apache/commons/math3/exception/package-summary.html">org.apache.commons.math3.exception</a></dt>
<dd>
<div class="block">Exception to be thrown when the maximal number of iterations is exceeded.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/TooManyIterationsException.html#TooManyIterationsException(java.lang.Number)">TooManyIterationsException(Number)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/TooManyIterationsException.html" title="class in org.apache.commons.math3.exception">TooManyIterationsException</a></dt>
<dd>
<div class="block">Construct the exception.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html#toRadians()">toRadians()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/DerivativeStructure.html" title="class in org.apache.commons.math3.analysis.differentiation">DerivativeStructure</a></dt>
<dd>
<div class="block">Convert degrees to radians, with error of less than 0.5 ULP</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html#toRadians()">toRadians()</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/SparseGradient.html" title="class in org.apache.commons.math3.analysis.differentiation">SparseGradient</a></dt>
<dd>
<div class="block">Convert degrees to radians, with error of less than 0.5 ULP</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#toRadians(double)">toRadians(double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Convert degrees to radians, with error of less than 0.5 ULP</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html#toRotation()">toRotation()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldRotation.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldRotation</a></dt>
<dd>
<div class="block">Convert to a constant vector without derivatives.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html#toSpace(org.apache.commons.math3.geometry.Vector)">toSpace(Vector&lt;Euclidean1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Line</a></dt>
<dd>
<div class="block">Transform a sub-space point into a space point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html#toSpace(org.apache.commons.math3.geometry.Point)">toSpace(Point&lt;Euclidean1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Line</a></dt>
<dd>
<div class="block">Transform a sub-space point into a space point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#toSpace(org.apache.commons.math3.geometry.Vector)">toSpace(Vector&lt;Euclidean2D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block">Transform a sub-space point into a space point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#toSpace(org.apache.commons.math3.geometry.Point)">toSpace(Point&lt;Euclidean2D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block">Transform an in-plane point into a 3D space point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#toSpace(org.apache.commons.math3.geometry.Vector)">toSpace(Vector&lt;Euclidean1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Line</a></dt>
<dd>
<div class="block">Transform a sub-space point into a space point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#toSpace(org.apache.commons.math3.geometry.Point)">toSpace(Point&lt;Euclidean1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Line</a></dt>
<dd>
<div class="block">Transform a sub-space point into a space point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/Embedding.html#toSpace(org.apache.commons.math3.geometry.Point)">toSpace(Point&lt;T&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/Embedding.html" title="interface in org.apache.commons.math3.geometry.partitioning">Embedding</a></dt>
<dd>
<div class="block">Transform a sub-space point into a space point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html#toSpace(org.apache.commons.math3.geometry.Point)">toSpace(Point&lt;Sphere1D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html" title="class in org.apache.commons.math3.geometry.spherical.twod">Circle</a></dt>
<dd>
<div class="block">Transform a sub-space point into a space point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#toSplitDouble()">toSplitDouble()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Convert the instance into a split double.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunction</a></dt>
<dd>
<div class="block">Returns a string representation of the polynomial.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Quaternion.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex">Quaternion</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Get a string representation of the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/util/DummyLocalizable.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.exception.util.<a href="./org/apache/commons/math3/exception/util/DummyLocalizable.html" title="class in org.apache.commons.math3.exception.util">DummyLocalizable</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/GaussNewtonOptimizer.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/GaussNewtonOptimizer.html" title="class in org.apache.commons.math3.fitting.leastsquares">GaussNewtonOptimizer</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">
 Returns the <code>String</code> representing this fraction, ie
 "num / dem" or just "num" if the denominator is one.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">
 Returns the <code>String</code> representing this fraction, ie
 "num / dem" or just "num" if the denominator is one.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/AbstractListChromosome.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/AbstractListChromosome.html" title="class in org.apache.commons.math3.genetics">AbstractListChromosome</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/ChromosomePair.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/ChromosomePair.html" title="class in org.apache.commons.math3.genetics">ChromosomePair</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/ListPopulation.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/ListPopulation.html" title="class in org.apache.commons.math3.genetics">ListPopulation</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/RandomKey.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/RandomKey.html" title="class in org.apache.commons.math3.genetics">RandomKey</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Get a string representation of this vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#toString(java.text.NumberFormat)">toString(NumberFormat)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Get a string representation of this vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Get a string representation of this vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#toString(java.text.NumberFormat)">toString(NumberFormat)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Get a string representation of this vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/RotationOrder.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/RotationOrder.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">RotationOrder</a></dt>
<dd>
<div class="block">Get a string representation of the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Get a string representation of this vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#toString(java.text.NumberFormat)">toString(NumberFormat)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Get a string representation of this vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Get a string representation of this vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#toString(java.text.NumberFormat)">toString(NumberFormat)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Get a string representation of this vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/Vector.html#toString(java.text.NumberFormat)">toString(NumberFormat)</a></span> - Method in interface org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/Vector.html" title="interface in org.apache.commons.math3.geometry">Vector</a></dt>
<dd>
<div class="block">Get a string representation of this vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Get a string representation for this matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Get a string representation for this matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/DoublePoint.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/DoublePoint.html" title="class in org.apache.commons.math3.ml.clustering">DoublePoint</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/Relationship.html#toString()">toString()</a></span> - Method in enum org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/Relationship.html" title="enum in org.apache.commons.math3.optim.linear">Relationship</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/Relationship.html#toString()">toString()</a></span> - Method in enum org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/Relationship.html" title="enum in org.apache.commons.math3.optimization.linear">Relationship</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/clustering/EuclideanDoublePoint.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.stat.clustering.<a href="./org/apache/commons/math3/stat/clustering/EuclideanDoublePoint.html" title="class in org.apache.commons.math3.stat.clustering">EuclideanDoublePoint</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/clustering/EuclideanIntegerPoint.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.stat.clustering.<a href="./org/apache/commons/math3/stat/clustering/EuclideanIntegerPoint.html" title="class in org.apache.commons.math3.stat.clustering">EuclideanIntegerPoint</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">Generates a text report displaying univariate statistics from values
 that have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/MultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">MultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Generates a text report displaying
 summary statistics from values that
 have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummaryValues.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/StatisticalSummaryValues.html" title="class in org.apache.commons.math3.stat.descriptive">StatisticalSummaryValues</a></dt>
<dd>
<div class="block">Generates a text report displaying values of statistics.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SummaryStatistics</a></dt>
<dd>
<div class="block">Generates a text report displaying summary statistics from values that
 have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedDescriptiveStatistics</a></dt>
<dd>
<div class="block">Generates a text report displaying univariate statistics from values
 that have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedMultivariateSummaryStatistics</a></dt>
<dd>
<div class="block">Generates a text report displaying
 summary statistics from values that
 have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/SynchronizedSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedSummaryStatistics</a></dt>
<dd>
<div class="block">Generates a text report displaying summary statistics from values that
 have been added.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Return a string representation of this frequency distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/interval/ConfidenceInterval.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.stat.interval.<a href="./org/apache/commons/math3/stat/interval/ConfidenceInterval.html" title="class in org.apache.commons.math3.stat.interval">ConfidenceInterval</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">

 The returned <code>String</code> is equal to
 <code>Double.toString(this.doubleValue())</code></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MultidimensionalCounter.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MultidimensionalCounter.html" title="class in org.apache.commons.math3.util">MultidimensionalCounter</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Pair.html#toString()">toString()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Pair.html" title="class in org.apache.commons.math3.util">Pair</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html#toSubSpace(org.apache.commons.math3.geometry.Vector)">toSubSpace(Vector&lt;Euclidean3D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Line</a></dt>
<dd>
<div class="block">Transform a space point into a sub-space point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html#toSubSpace(org.apache.commons.math3.geometry.Point)">toSubSpace(Point&lt;Euclidean3D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Line</a></dt>
<dd>
<div class="block">Transform a space point into a sub-space point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#toSubSpace(org.apache.commons.math3.geometry.Vector)">toSubSpace(Vector&lt;Euclidean3D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block">Transform a space point into a sub-space point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#toSubSpace(org.apache.commons.math3.geometry.Point)">toSubSpace(Point&lt;Euclidean3D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block">Transform a 3D space point into an in-plane point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#toSubSpace(org.apache.commons.math3.geometry.Vector)">toSubSpace(Vector&lt;Euclidean2D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Line</a></dt>
<dd>
<div class="block">Transform a space point into a sub-space point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#toSubSpace(org.apache.commons.math3.geometry.Point)">toSubSpace(Point&lt;Euclidean2D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Line</a></dt>
<dd>
<div class="block">Transform a space point into a sub-space point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/Embedding.html#toSubSpace(org.apache.commons.math3.geometry.Point)">toSubSpace(Point&lt;S&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/Embedding.html" title="interface in org.apache.commons.math3.geometry.partitioning">Embedding</a></dt>
<dd>
<div class="block">Transform a space point into a sub-space point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html#toSubSpace(org.apache.commons.math3.geometry.Point)">toSubSpace(Point&lt;Sphere2D&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html" title="class in org.apache.commons.math3.geometry.spherical.twod">Circle</a></dt>
<dd>
<div class="block">Transform a space point into a sub-space point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/FunctionUtils.html#toUnivariateDifferential(org.apache.commons.math3.analysis.DifferentiableUnivariateFunction)">toUnivariateDifferential(DifferentiableUnivariateFunction)</a></span> - Static method in class org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/FunctionUtils.html" title="class in org.apache.commons.math3.analysis">FunctionUtils</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>this conversion method is temporary in version 3.1, as the <a href="./org/apache/commons/math3/analysis/DifferentiableUnivariateFunction.html" title="interface in org.apache.commons.math3.analysis"><code>DifferentiableUnivariateFunction</code></a> interface itself is deprecated</i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/genetics/TournamentSelection.html" title="class in org.apache.commons.math3.genetics"><span class="strong">TournamentSelection</span></a> - Class in <a href="./org/apache/commons/math3/genetics/package-summary.html">org.apache.commons.math3.genetics</a></dt>
<dd>
<div class="block">Tournament selection scheme.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/TournamentSelection.html#TournamentSelection(int)">TournamentSelection(int)</a></span> - Constructor for class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/TournamentSelection.html" title="class in org.apache.commons.math3.genetics">TournamentSelection</a></dt>
<dd>
<div class="block">Creates a new TournamentSelection instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html#toVector3D()">toVector3D()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/FieldVector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">FieldVector3D</a></dt>
<dd>
<div class="block">Convert to a constant vector without derivatives.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/partitioning/Transform.html" title="interface in org.apache.commons.math3.geometry.partitioning"><span class="strong">Transform</span></a>&lt;<a href="./org/apache/commons/math3/geometry/partitioning/Transform.html" title="type parameter in Transform">S</a> extends <a href="./org/apache/commons/math3/geometry/Space.html" title="interface in org.apache.commons.math3.geometry">Space</a>,<a href="./org/apache/commons/math3/geometry/partitioning/Transform.html" title="type parameter in Transform">T</a> extends <a href="./org/apache/commons/math3/geometry/Space.html" title="interface in org.apache.commons.math3.geometry">Space</a>&gt; - Interface in <a href="./org/apache/commons/math3/geometry/partitioning/package-summary.html">org.apache.commons.math3.geometry.partitioning</a></dt>
<dd>
<div class="block">This interface represents an inversible affine transform in a space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/FastCosineTransformer.html#transform(double[], org.apache.commons.math3.transform.TransformType)">transform(double[], TransformType)</a></span> - Method in class org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/FastCosineTransformer.html" title="class in org.apache.commons.math3.transform">FastCosineTransformer</a></dt>
<dd>
<div class="block">Returns the (forward, inverse) transform of the specified real data set.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/FastCosineTransformer.html#transform(org.apache.commons.math3.analysis.UnivariateFunction, double, double, int, org.apache.commons.math3.transform.TransformType)">transform(UnivariateFunction, double, double, int, TransformType)</a></span> - Method in class org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/FastCosineTransformer.html" title="class in org.apache.commons.math3.transform">FastCosineTransformer</a></dt>
<dd>
<div class="block">Returns the (forward, inverse) transform of the specified real function,
 sampled on the specified interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/FastFourierTransformer.html#transform(double[], org.apache.commons.math3.transform.TransformType)">transform(double[], TransformType)</a></span> - Method in class org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/FastFourierTransformer.html" title="class in org.apache.commons.math3.transform">FastFourierTransformer</a></dt>
<dd>
<div class="block">Returns the (forward, inverse) transform of the specified real data set.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/FastFourierTransformer.html#transform(org.apache.commons.math3.analysis.UnivariateFunction, double, double, int, org.apache.commons.math3.transform.TransformType)">transform(UnivariateFunction, double, double, int, TransformType)</a></span> - Method in class org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/FastFourierTransformer.html" title="class in org.apache.commons.math3.transform">FastFourierTransformer</a></dt>
<dd>
<div class="block">Returns the (forward, inverse) transform of the specified real function,
 sampled on the specified interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/FastFourierTransformer.html#transform(org.apache.commons.math3.complex.Complex[], org.apache.commons.math3.transform.TransformType)">transform(Complex[], TransformType)</a></span> - Method in class org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/FastFourierTransformer.html" title="class in org.apache.commons.math3.transform">FastFourierTransformer</a></dt>
<dd>
<div class="block">Returns the (forward, inverse) transform of the specified complex data set.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/FastHadamardTransformer.html#transform(double[], org.apache.commons.math3.transform.TransformType)">transform(double[], TransformType)</a></span> - Method in class org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/FastHadamardTransformer.html" title="class in org.apache.commons.math3.transform">FastHadamardTransformer</a></dt>
<dd>
<div class="block">Returns the (forward, inverse) transform of the specified real data set.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/FastHadamardTransformer.html#transform(org.apache.commons.math3.analysis.UnivariateFunction, double, double, int, org.apache.commons.math3.transform.TransformType)">transform(UnivariateFunction, double, double, int, TransformType)</a></span> - Method in class org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/FastHadamardTransformer.html" title="class in org.apache.commons.math3.transform">FastHadamardTransformer</a></dt>
<dd>
<div class="block">Returns the (forward, inverse) transform of the specified real function,
 sampled on the specified interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/FastHadamardTransformer.html#transform(int[])">transform(int[])</a></span> - Method in class org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/FastHadamardTransformer.html" title="class in org.apache.commons.math3.transform">FastHadamardTransformer</a></dt>
<dd>
<div class="block">Returns the forward transform of the specified integer data set.The
 integer transform cannot be inverted directly, due to a scaling factor
 which may lead to double results.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/FastSineTransformer.html#transform(double[], org.apache.commons.math3.transform.TransformType)">transform(double[], TransformType)</a></span> - Method in class org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/FastSineTransformer.html" title="class in org.apache.commons.math3.transform">FastSineTransformer</a></dt>
<dd>
<div class="block">Returns the (forward, inverse) transform of the specified real data set.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/FastSineTransformer.html#transform(org.apache.commons.math3.analysis.UnivariateFunction, double, double, int, org.apache.commons.math3.transform.TransformType)">transform(UnivariateFunction, double, double, int, TransformType)</a></span> - Method in class org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/FastSineTransformer.html" title="class in org.apache.commons.math3.transform">FastSineTransformer</a></dt>
<dd>
<div class="block">Returns the (forward, inverse) transform of the specified real function,
 sampled on the specified interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/RealTransformer.html#transform(double[], org.apache.commons.math3.transform.TransformType)">transform(double[], TransformType)</a></span> - Method in interface org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/RealTransformer.html" title="interface in org.apache.commons.math3.transform">RealTransformer</a></dt>
<dd>
<div class="block">Returns the (forward, inverse) transform of the specified real data set.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/RealTransformer.html#transform(org.apache.commons.math3.analysis.UnivariateFunction, double, double, int, org.apache.commons.math3.transform.TransformType)">transform(UnivariateFunction, double, double, int, TransformType)</a></span> - Method in interface org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/RealTransformer.html" title="interface in org.apache.commons.math3.transform">RealTransformer</a></dt>
<dd>
<div class="block">Returns the (forward, inverse) transform of the specified real function,
 sampled on the specified interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/DefaultTransformer.html#transform(java.lang.Object)">transform(Object)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/DefaultTransformer.html" title="class in org.apache.commons.math3.util">DefaultTransformer</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/NumberTransformer.html#transform(java.lang.Object)">transform(Object)</a></span> - Method in interface org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/NumberTransformer.html" title="interface in org.apache.commons.math3.util">NumberTransformer</a></dt>
<dd>
<div class="block">Implementing this interface provides a facility to transform
 from Object to Double.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/TransformerMap.html#transform(java.lang.Object)">transform(Object)</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/TransformerMap.html" title="class in org.apache.commons.math3.util">TransformerMap</a></dt>
<dd>
<div class="block">Attempts to transform the Object against the map of
 NumberTransformers.</div>
</dd>
<dt><a href="./org/apache/commons/math3/util/TransformerMap.html" title="class in org.apache.commons.math3.util"><span class="strong">TransformerMap</span></a> - Class in <a href="./org/apache/commons/math3/util/package-summary.html">org.apache.commons.math3.util</a></dt>
<dd>
<div class="block">This TansformerMap automates the transformation of mixed object types.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/TransformerMap.html#TransformerMap()">TransformerMap()</a></span> - Constructor for class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/TransformerMap.html" title="class in org.apache.commons.math3.util">TransformerMap</a></dt>
<dd>
<div class="block">Build a map containing only the default transformer.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/TransformerMap.html#transformers()">transformers()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/TransformerMap.html" title="class in org.apache.commons.math3.util">TransformerMap</a></dt>
<dd>
<div class="block">Returns the Set of NumberTransformers used as values
 in the map.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/FastFourierTransformer.html#transformInPlace(double[][], org.apache.commons.math3.transform.DftNormalization, org.apache.commons.math3.transform.TransformType)">transformInPlace(double[][], DftNormalization, TransformType)</a></span> - Static method in class org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/FastFourierTransformer.html" title="class in org.apache.commons.math3.transform">FastFourierTransformer</a></dt>
<dd>
<div class="block">Computes the standard transform of the specified complex data.</div>
</dd>
<dt><a href="./org/apache/commons/math3/transform/TransformType.html" title="enum in org.apache.commons.math3.transform"><span class="strong">TransformType</span></a> - Enum in <a href="./org/apache/commons/math3/transform/package-summary.html">org.apache.commons.math3.transform</a></dt>
<dd>
<div class="block">This enumeration defines the type of transform which is to be computed.</div>
</dd>
<dt><a href="./org/apache/commons/math3/transform/TransformUtils.html" title="class in org.apache.commons.math3.transform"><span class="strong">TransformUtils</span></a> - Class in <a href="./org/apache/commons/math3/transform/package-summary.html">org.apache.commons.math3.transform</a></dt>
<dd>
<div class="block">Useful functions for the implementation of various transforms.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#translate(org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">translate(Vector3D)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block">Translate the plane by the specified amount.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/PolyhedronsSet.html#translate(org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">translate(Vector3D)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/PolyhedronsSet.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">PolyhedronsSet</a></dt>
<dd>
<div class="block">Translate the region by the specified amount.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#translateToPoint(org.apache.commons.math3.geometry.euclidean.twod.Vector2D)">translateToPoint(Vector2D)</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Line</a></dt>
<dd>
<div class="block">Translate the line to force it passing by a point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#transpose()">transpose()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Returns the transpose of this matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#transpose()">transpose()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Returns the transpose of this matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#transpose()">transpose()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Returns the transpose of this matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#transpose()">transpose()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Returns the transpose of this matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#transpose()">transpose()</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Returns the transpose of this matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#transpose()">transpose()</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Returns the transpose of this matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#trap(int, java.lang.String, org.apache.commons.math3.dfp.Dfp, org.apache.commons.math3.dfp.Dfp, org.apache.commons.math3.dfp.Dfp)">trap(int, String, Dfp, Dfp, Dfp)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Trap handler.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/TrapezoidIntegrator.html#TRAPEZOID_MAX_ITERATIONS_COUNT">TRAPEZOID_MAX_ITERATIONS_COUNT</a></span> - Static variable in class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/TrapezoidIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">TrapezoidIntegrator</a></dt>
<dd>
<div class="block">Maximum number of iterations for trapezoid.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/integration/TrapezoidIntegrator.html" title="class in org.apache.commons.math3.analysis.integration"><span class="strong">TrapezoidIntegrator</span></a> - Class in <a href="./org/apache/commons/math3/analysis/integration/package-summary.html">org.apache.commons.math3.analysis.integration</a></dt>
<dd>
<div class="block">Implements the <a href="http://mathworld.wolfram.com/TrapezoidalRule.html">
 Trapezoid Rule</a> for integration of real univariate functions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/TrapezoidIntegrator.html#TrapezoidIntegrator(double, double, int, int)">TrapezoidIntegrator(double, double, int, int)</a></span> - Constructor for class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/TrapezoidIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">TrapezoidIntegrator</a></dt>
<dd>
<div class="block">Build a trapezoid integrator with given accuracies and iterations counts.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/TrapezoidIntegrator.html#TrapezoidIntegrator(int, int)">TrapezoidIntegrator(int, int)</a></span> - Constructor for class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/TrapezoidIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">TrapezoidIntegrator</a></dt>
<dd>
<div class="block">Build a trapezoid integrator with given iteration counts.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/integration/TrapezoidIntegrator.html#TrapezoidIntegrator()">TrapezoidIntegrator()</a></span> - Constructor for class org.apache.commons.math3.analysis.integration.<a href="./org/apache/commons/math3/analysis/integration/TrapezoidIntegrator.html" title="class in org.apache.commons.math3.analysis.integration">TrapezoidIntegrator</a></dt>
<dd>
<div class="block">Construct a trapezoid integrator with default settings.</div>
</dd>
<dt><a href="./org/apache/commons/math3/distribution/TriangularDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">TriangularDistribution</span></a> - Class in <a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a></dt>
<dd>
<div class="block">Implementation of the triangular real distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/TriangularDistribution.html#TriangularDistribution(double, double, double)">TriangularDistribution(double, double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/TriangularDistribution.html" title="class in org.apache.commons.math3.distribution">TriangularDistribution</a></dt>
<dd>
<div class="block">Creates a triangular real distribution using the given lower limit,
 upper limit, and mode.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/TriangularDistribution.html#TriangularDistribution(org.apache.commons.math3.random.RandomGenerator, double, double, double)">TriangularDistribution(RandomGenerator, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/TriangularDistribution.html" title="class in org.apache.commons.math3.distribution">TriangularDistribution</a></dt>
<dd>
<div class="block">Creates a triangular distribution.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/interpolation/TricubicSplineInterpolatingFunction.html" title="class in org.apache.commons.math3.analysis.interpolation"><span class="strong">TricubicSplineInterpolatingFunction</span></a> - Class in <a href="./org/apache/commons/math3/analysis/interpolation/package-summary.html">org.apache.commons.math3.analysis.interpolation</a></dt>
<dd>
<div class="block">Function that implements the
 <a href="http://en.wikipedia.org/wiki/Tricubic_interpolation">
 tricubic spline interpolation</a>, as proposed in
 <quote>
  Tricubic interpolation in three dimensions<br/>
  F.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/TricubicSplineInterpolatingFunction.html#TricubicSplineInterpolatingFunction(double[], double[], double[], double[][][], double[][][], double[][][], double[][][], double[][][], double[][][], double[][][], double[][][])">TricubicSplineInterpolatingFunction(double[], double[], double[], double[][][], double[][][], double[][][], double[][][], double[][][], double[][][], double[][][], double[][][])</a></span> - Constructor for class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/TricubicSplineInterpolatingFunction.html" title="class in org.apache.commons.math3.analysis.interpolation">TricubicSplineInterpolatingFunction</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/analysis/interpolation/TricubicSplineInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation"><span class="strong">TricubicSplineInterpolator</span></a> - Class in <a href="./org/apache/commons/math3/analysis/interpolation/package-summary.html">org.apache.commons.math3.analysis.interpolation</a></dt>
<dd>
<div class="block">Generates a tricubic interpolating function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/TricubicSplineInterpolator.html#TricubicSplineInterpolator()">TricubicSplineInterpolator()</a></span> - Constructor for class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/TricubicSplineInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">TricubicSplineInterpolator</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/special/Gamma.html#trigamma(double)">trigamma(double)</a></span> - Static method in class org.apache.commons.math3.special.<a href="./org/apache/commons/math3/special/Gamma.html" title="class in org.apache.commons.math3.special">Gamma</a></dt>
<dd>
<div class="block">Computes the trigamma function of x.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Incrementor.MaxCountExceededCallback.html#trigger(int)">trigger(int)</a></span> - Method in interface org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Incrementor.MaxCountExceededCallback.html" title="interface in org.apache.commons.math3.util">Incrementor.MaxCountExceededCallback</a></dt>
<dd>
<div class="block">Function called when the maximal count has been reached.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/TrivariateFunction.html" title="interface in org.apache.commons.math3.analysis"><span class="strong">TrivariateFunction</span></a> - Interface in <a href="./org/apache/commons/math3/analysis/package-summary.html">org.apache.commons.math3.analysis</a></dt>
<dd>
<div class="block">An interface representing a trivariate real function.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/interpolation/TrivariateGridInterpolator.html" title="interface in org.apache.commons.math3.analysis.interpolation"><span class="strong">TrivariateGridInterpolator</span></a> - Interface in <a href="./org/apache/commons/math3/analysis/interpolation/package-summary.html">org.apache.commons.math3.analysis.interpolation</a></dt>
<dd>
<div class="block">Interface representing a trivariate real interpolating function where the
 sample points must be specified on a regular grid.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#trunc(org.apache.commons.math3.dfp.DfpField.RoundingMode)">trunc(DfpField.RoundingMode)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Does the integer conversions with the specified rounding.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#tTest(double, double[], double)">tTest(double, double[], double)</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#tTest(double, double[])">tTest(double, double[])</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#tTest(double, org.apache.commons.math3.stat.descriptive.StatisticalSummary, double)">tTest(double, StatisticalSummary, double)</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#tTest(double, org.apache.commons.math3.stat.descriptive.StatisticalSummary)">tTest(double, StatisticalSummary)</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#tTest(double[], double[], double)">tTest(double[], double[], double)</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#tTest(double[], double[])">tTest(double[], double[])</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#tTest(org.apache.commons.math3.stat.descriptive.StatisticalSummary, org.apache.commons.math3.stat.descriptive.StatisticalSummary, double)">tTest(StatisticalSummary, StatisticalSummary, double)</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TestUtils.html#tTest(org.apache.commons.math3.stat.descriptive.StatisticalSummary, org.apache.commons.math3.stat.descriptive.StatisticalSummary)">tTest(StatisticalSummary, StatisticalSummary)</a></span> - Static method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TestUtils.html" title="class in org.apache.commons.math3.stat.inference">TestUtils</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/stat/inference/TTest.html" title="class in org.apache.commons.math3.stat.inference"><span class="strong">TTest</span></a> - Class in <a href="./org/apache/commons/math3/stat/inference/package-summary.html">org.apache.commons.math3.stat.inference</a></dt>
<dd>
<div class="block">An implementation for Student's t-tests.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TTest.html#TTest()">TTest()</a></span> - Constructor for class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TTest.html" title="class in org.apache.commons.math3.stat.inference">TTest</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TTest.html#tTest(double, double[])">tTest(double, double[])</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TTest.html" title="class in org.apache.commons.math3.stat.inference">TTest</a></dt>
<dd>
<div class="block">Returns the <i>observed significance level</i>, or
 <i>p-value</i>, associated with a one-sample, two-tailed t-test
 comparing the mean of the input array with the constant <code>mu</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TTest.html#tTest(double, double[], double)">tTest(double, double[], double)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TTest.html" title="class in org.apache.commons.math3.stat.inference">TTest</a></dt>
<dd>
<div class="block">Performs a <a href="http://www.itl.nist.gov/div898/handbook/eda/section3/eda353.htm">
 two-sided t-test</a> evaluating the null hypothesis that the mean of the population from
 which <code>sample</code> is drawn equals <code>mu</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TTest.html#tTest(double, org.apache.commons.math3.stat.descriptive.StatisticalSummary)">tTest(double, StatisticalSummary)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TTest.html" title="class in org.apache.commons.math3.stat.inference">TTest</a></dt>
<dd>
<div class="block">Returns the <i>observed significance level</i>, or
 <i>p-value</i>, associated with a one-sample, two-tailed t-test
 comparing the mean of the dataset described by <code>sampleStats</code>
 with the constant <code>mu</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TTest.html#tTest(double, org.apache.commons.math3.stat.descriptive.StatisticalSummary, double)">tTest(double, StatisticalSummary, double)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TTest.html" title="class in org.apache.commons.math3.stat.inference">TTest</a></dt>
<dd>
<div class="block">Performs a <a href="http://www.itl.nist.gov/div898/handbook/eda/section3/eda353.htm">
 two-sided t-test</a> evaluating the null hypothesis that the mean of the
 population from which the dataset described by <code>stats</code> is
 drawn equals <code>mu</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TTest.html#tTest(double[], double[])">tTest(double[], double[])</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TTest.html" title="class in org.apache.commons.math3.stat.inference">TTest</a></dt>
<dd>
<div class="block">Returns the <i>observed significance level</i>, or
 <i>p-value</i>, associated with a two-sample, two-tailed t-test
 comparing the means of the input arrays.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TTest.html#tTest(double[], double[], double)">tTest(double[], double[], double)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TTest.html" title="class in org.apache.commons.math3.stat.inference">TTest</a></dt>
<dd>
<div class="block">Performs a
 <a href="http://www.itl.nist.gov/div898/handbook/eda/section3/eda353.htm">
 two-sided t-test</a> evaluating the null hypothesis that <code>sample1</code>
 and <code>sample2</code> are drawn from populations with the same mean,
 with significance level <code>alpha</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TTest.html#tTest(org.apache.commons.math3.stat.descriptive.StatisticalSummary, org.apache.commons.math3.stat.descriptive.StatisticalSummary)">tTest(StatisticalSummary, StatisticalSummary)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TTest.html" title="class in org.apache.commons.math3.stat.inference">TTest</a></dt>
<dd>
<div class="block">Returns the <i>observed significance level</i>, or
 <i>p-value</i>, associated with a two-sample, two-tailed t-test
 comparing the means of the datasets described by two StatisticalSummary
 instances.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TTest.html#tTest(org.apache.commons.math3.stat.descriptive.StatisticalSummary, org.apache.commons.math3.stat.descriptive.StatisticalSummary, double)">tTest(StatisticalSummary, StatisticalSummary, double)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TTest.html" title="class in org.apache.commons.math3.stat.inference">TTest</a></dt>
<dd>
<div class="block">Performs a
 <a href="http://www.itl.nist.gov/div898/handbook/eda/section3/eda353.htm">
 two-sided t-test</a> evaluating the null hypothesis that
 <code>sampleStats1</code> and <code>sampleStats2</code> describe
 datasets drawn from populations with the same mean, with significance
 level <code>alpha</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TTest.html#tTest(double, double, double, double)">tTest(double, double, double, double)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TTest.html" title="class in org.apache.commons.math3.stat.inference">TTest</a></dt>
<dd>
<div class="block">Computes p-value for 2-sided, 1-sample t-test.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/TTest.html#tTest(double, double, double, double, double, double)">tTest(double, double, double, double, double, double)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/TTest.html" title="class in org.apache.commons.math3.stat.inference">TTest</a></dt>
<dd>
<div class="block">Computes p-value for 2-sided, 2-sample t-test.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#TWO">TWO</a></span> - Static variable in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">A fraction representing "2 / 1".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#TWO">TWO</a></span> - Static variable in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">A fraction representing "2 / 1".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#TWO_FIFTHS">TWO_FIFTHS</a></span> - Static variable in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">A fraction representing "2/5".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#TWO_FIFTHS">TWO_FIFTHS</a></span> - Static variable in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">A fraction representing "2/5".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathUtils.html#TWO_PI">TWO_PI</a></span> - Static variable in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathUtils.html" title="class in org.apache.commons.math3.util">MathUtils</a></dt>
<dd>
<div class="block">2 &pi;.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#TWO_QUARTERS">TWO_QUARTERS</a></span> - Static variable in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">A fraction representing "2/4".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#TWO_QUARTERS">TWO_QUARTERS</a></span> - Static variable in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">A fraction representing "2/4".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#TWO_THIRDS">TWO_THIRDS</a></span> - Static variable in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">A fraction representing "2/3".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#TWO_THIRDS">TWO_THIRDS</a></span> - Static variable in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">A fraction representing "2/3".</div>
</dd>
</dl>
<a name="_U_">
<!--   -->
</a>
<h2 class="title">U</h2>
<dl>
<dt><a href="./org/apache/commons/math3/analysis/function/Ulp.html" title="class in org.apache.commons.math3.analysis.function"><span class="strong">Ulp</span></a> - Class in <a href="./org/apache/commons/math3/analysis/function/package-summary.html">org.apache.commons.math3.analysis.function</a></dt>
<dd>
<div class="block"><code>ulp</code> function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Ulp.html#Ulp()">Ulp()</a></span> - Constructor for class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Ulp.html" title="class in org.apache.commons.math3.analysis.function">Ulp</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#ulp(double)">ulp(double)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Compute least significant bit (Unit in Last Position) for a number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/FastMath.html#ulp(float)">ulp(float)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/FastMath.html" title="class in org.apache.commons.math3.util">FastMath</a></dt>
<dd>
<div class="block">Compute least significant bit (Unit in Last Position) for a number.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/SimpleBounds.html#unbounded(int)">unbounded(int)</a></span> - Static method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/SimpleBounds.html" title="class in org.apache.commons.math3.optim">SimpleBounds</a></dt>
<dd>
<div class="block">Factory method that creates instance of this class that represents
 unbounded ranges.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/linear/UnboundedSolutionException.html" title="class in org.apache.commons.math3.optim.linear"><span class="strong">UnboundedSolutionException</span></a> - Exception in <a href="./org/apache/commons/math3/optim/linear/package-summary.html">org.apache.commons.math3.optim.linear</a></dt>
<dd>
<div class="block">This class represents exceptions thrown by optimizers when a solution escapes to infinity.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/UnboundedSolutionException.html#UnboundedSolutionException()">UnboundedSolutionException()</a></span> - Constructor for exception org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/UnboundedSolutionException.html" title="class in org.apache.commons.math3.optim.linear">UnboundedSolutionException</a></dt>
<dd>
<div class="block">Simple constructor using a default message.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/linear/UnboundedSolutionException.html" title="class in org.apache.commons.math3.optimization.linear"><span class="strong">UnboundedSolutionException</span></a> - Exception in <a href="./org/apache/commons/math3/optimization/linear/package-summary.html">org.apache.commons.math3.optimization.linear</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/UnboundedSolutionException.html#UnboundedSolutionException()">UnboundedSolutionException()</a></span> - Constructor for exception org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/UnboundedSolutionException.html" title="class in org.apache.commons.math3.optimization.linear">UnboundedSolutionException</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Simple constructor using a default message.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/MultivariateFunctionMappingAdapter.html#unboundedToBounded(double[])">unboundedToBounded(double[])</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/MultivariateFunctionMappingAdapter.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar">MultivariateFunctionMappingAdapter</a></dt>
<dd>
<div class="block">Maps an array from unbounded to bounded.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/MultivariateFunctionMappingAdapter.html#unboundedToBounded(double[])">unboundedToBounded(double[])</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/MultivariateFunctionMappingAdapter.html" title="class in org.apache.commons.math3.optimization.direct">MultivariateFunctionMappingAdapter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Map an array from unbounded to bounded.</div>
</dd>
<dt><a href="./org/apache/commons/math3/random/UncorrelatedRandomVectorGenerator.html" title="class in org.apache.commons.math3.random"><span class="strong">UncorrelatedRandomVectorGenerator</span></a> - Class in <a href="./org/apache/commons/math3/random/package-summary.html">org.apache.commons.math3.random</a></dt>
<dd>
<div class="block">A <a href="./org/apache/commons/math3/random/RandomVectorGenerator.html" title="interface in org.apache.commons.math3.random"><code>RandomVectorGenerator</code></a> that generates vectors with uncorrelated
 components.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/UncorrelatedRandomVectorGenerator.html#UncorrelatedRandomVectorGenerator(double[], double[], org.apache.commons.math3.random.NormalizedRandomGenerator)">UncorrelatedRandomVectorGenerator(double[], double[], NormalizedRandomGenerator)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/UncorrelatedRandomVectorGenerator.html" title="class in org.apache.commons.math3.random">UncorrelatedRandomVectorGenerator</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/UncorrelatedRandomVectorGenerator.html#UncorrelatedRandomVectorGenerator(int, org.apache.commons.math3.random.NormalizedRandomGenerator)">UncorrelatedRandomVectorGenerator(int, NormalizedRandomGenerator)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/UncorrelatedRandomVectorGenerator.html" title="class in org.apache.commons.math3.random">UncorrelatedRandomVectorGenerator</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/Dfp.html#unequal(org.apache.commons.math3.dfp.Dfp)">unequal(Dfp)</a></span> - Method in class org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp">Dfp</a></dt>
<dd>
<div class="block">Check if instance is not equal to x.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/FeatureInitializerFactory.html#uniform(org.apache.commons.math3.random.RandomGenerator, double, double)">uniform(RandomGenerator, double, double)</a></span> - Static method in class org.apache.commons.math3.ml.neuralnet.<a href="./org/apache/commons/math3/ml/neuralnet/FeatureInitializerFactory.html" title="class in org.apache.commons.math3.ml.neuralnet">FeatureInitializerFactory</a></dt>
<dd>
<div class="block">Uniform sampling of the given range.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/FeatureInitializerFactory.html#uniform(double, double)">uniform(double, double)</a></span> - Static method in class org.apache.commons.math3.ml.neuralnet.<a href="./org/apache/commons/math3/ml/neuralnet/FeatureInitializerFactory.html" title="class in org.apache.commons.math3.ml.neuralnet">FeatureInitializerFactory</a></dt>
<dd>
<div class="block">Uniform sampling of the given range.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/ValueServer.html#UNIFORM_MODE">UNIFORM_MODE</a></span> - Static variable in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/ValueServer.html" title="class in org.apache.commons.math3.random">ValueServer</a></dt>
<dd>
<div class="block">Uniform random deviates with mean = &mu;.</div>
</dd>
<dt><a href="./org/apache/commons/math3/genetics/UniformCrossover.html" title="class in org.apache.commons.math3.genetics"><span class="strong">UniformCrossover</span></a>&lt;<a href="./org/apache/commons/math3/genetics/UniformCrossover.html" title="type parameter in UniformCrossover">T</a>&gt; - Class in <a href="./org/apache/commons/math3/genetics/package-summary.html">org.apache.commons.math3.genetics</a></dt>
<dd>
<div class="block">Perform Uniform Crossover [UX] on the specified chromosomes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/genetics/UniformCrossover.html#UniformCrossover(double)">UniformCrossover(double)</a></span> - Constructor for class org.apache.commons.math3.genetics.<a href="./org/apache/commons/math3/genetics/UniformCrossover.html" title="class in org.apache.commons.math3.genetics">UniformCrossover</a></dt>
<dd>
<div class="block">Creates a new <a href="./org/apache/commons/math3/genetics/UniformCrossover.html" title="class in org.apache.commons.math3.genetics"><code>UniformCrossover</code></a> policy using the given mixing ratio.</div>
</dd>
<dt><a href="./org/apache/commons/math3/distribution/UniformIntegerDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">UniformIntegerDistribution</span></a> - Class in <a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a></dt>
<dd>
<div class="block">Implementation of the uniform integer distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/UniformIntegerDistribution.html#UniformIntegerDistribution(int, int)">UniformIntegerDistribution(int, int)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/UniformIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">UniformIntegerDistribution</a></dt>
<dd>
<div class="block">Creates a new uniform integer distribution using the given lower and
 upper bounds (both inclusive).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/UniformIntegerDistribution.html#UniformIntegerDistribution(org.apache.commons.math3.random.RandomGenerator, int, int)">UniformIntegerDistribution(RandomGenerator, int, int)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/UniformIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">UniformIntegerDistribution</a></dt>
<dd>
<div class="block">Creates a new uniform integer distribution using the given lower and
 upper bounds (both inclusive).</div>
</dd>
<dt><a href="./org/apache/commons/math3/random/UniformRandomGenerator.html" title="class in org.apache.commons.math3.random"><span class="strong">UniformRandomGenerator</span></a> - Class in <a href="./org/apache/commons/math3/random/package-summary.html">org.apache.commons.math3.random</a></dt>
<dd>
<div class="block">This class implements a normalized uniform random generator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/UniformRandomGenerator.html#UniformRandomGenerator(org.apache.commons.math3.random.RandomGenerator)">UniformRandomGenerator(RandomGenerator)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/UniformRandomGenerator.html" title="class in org.apache.commons.math3.random">UniformRandomGenerator</a></dt>
<dd>
<div class="block">Create a new generator.</div>
</dd>
<dt><a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">UniformRealDistribution</span></a> - Class in <a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a></dt>
<dd>
<div class="block">Implementation of the uniform real distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html#UniformRealDistribution()">UniformRealDistribution()</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html" title="class in org.apache.commons.math3.distribution">UniformRealDistribution</a></dt>
<dd>
<div class="block">Create a standard uniform real distribution with lower bound (inclusive)
 equal to zero and upper bound (exclusive) equal to one.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html#UniformRealDistribution(double, double)">UniformRealDistribution(double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html" title="class in org.apache.commons.math3.distribution">UniformRealDistribution</a></dt>
<dd>
<div class="block">Create a uniform real distribution using the given lower and upper
 bounds.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html#UniformRealDistribution(double, double, double)">UniformRealDistribution(double, double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html" title="class in org.apache.commons.math3.distribution">UniformRealDistribution</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.2, inverse CDF is now calculated analytically, use
             <a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html#UniformRealDistribution(double, double)"><code>UniformRealDistribution.UniformRealDistribution(double, double)</code></a> instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html#UniformRealDistribution(org.apache.commons.math3.random.RandomGenerator, double, double, double)">UniformRealDistribution(RandomGenerator, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html" title="class in org.apache.commons.math3.distribution">UniformRealDistribution</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>as of 3.2, inverse CDF is now calculated analytically, use
             <a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html#UniformRealDistribution(org.apache.commons.math3.random.RandomGenerator, double, double)"><code>UniformRealDistribution.UniformRealDistribution(RandomGenerator, double, double)</code></a>
             instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html#UniformRealDistribution(org.apache.commons.math3.random.RandomGenerator, double, double)">UniformRealDistribution(RandomGenerator, double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/UniformRealDistribution.html" title="class in org.apache.commons.math3.distribution">UniformRealDistribution</a></dt>
<dd>
<div class="block">Creates a uniform distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/RegionFactory.html#union(org.apache.commons.math3.geometry.partitioning.Region, org.apache.commons.math3.geometry.partitioning.Region)">union(Region&lt;S&gt;, Region&lt;S&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/RegionFactory.html" title="class in org.apache.commons.math3.geometry.partitioning">RegionFactory</a></dt>
<dd>
<div class="block">Compute the union of two regions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#unitize()">unitize()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Converts this vector into a unit vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#unitize()">unitize()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Converts this vector into a unit vector.</div>
</dd>
<dt><a href="./org/apache/commons/math3/random/UnitSphereRandomVectorGenerator.html" title="class in org.apache.commons.math3.random"><span class="strong">UnitSphereRandomVectorGenerator</span></a> - Class in <a href="./org/apache/commons/math3/random/package-summary.html">org.apache.commons.math3.random</a></dt>
<dd>
<div class="block">Generate random vectors isotropically located on the surface of a sphere.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/UnitSphereRandomVectorGenerator.html#UnitSphereRandomVectorGenerator(int, org.apache.commons.math3.random.RandomGenerator)">UnitSphereRandomVectorGenerator(int, RandomGenerator)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/UnitSphereRandomVectorGenerator.html" title="class in org.apache.commons.math3.random">UnitSphereRandomVectorGenerator</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/UnitSphereRandomVectorGenerator.html#UnitSphereRandomVectorGenerator(int)">UnitSphereRandomVectorGenerator(int)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/UnitSphereRandomVectorGenerator.html" title="class in org.apache.commons.math3.random">UnitSphereRandomVectorGenerator</a></dt>
<dd>
<div class="block">Create an object that will use a default RNG (<a href="./org/apache/commons/math3/random/MersenneTwister.html" title="class in org.apache.commons.math3.random"><code>MersenneTwister</code></a>),
 in order to generate the individual components.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/OpenMapRealVector.html#unitVector()">unitVector()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/OpenMapRealVector.html" title="class in org.apache.commons.math3.linear">OpenMapRealVector</a></dt>
<dd>
<div class="block">Creates a unit vector pointing in the direction of this vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#unitVector()">unitVector()</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Creates a unit vector pointing in the direction of this vector.</div>
</dd>
<dt><a href="./org/apache/commons/math3/dfp/UnivariateDfpFunction.html" title="interface in org.apache.commons.math3.dfp"><span class="strong">UnivariateDfpFunction</span></a> - Interface in <a href="./org/apache/commons/math3/dfp/package-summary.html">org.apache.commons.math3.dfp</a></dt>
<dd>
<div class="block">An interface representing a univariate <a href="./org/apache/commons/math3/dfp/Dfp.html" title="class in org.apache.commons.math3.dfp"><code>Dfp</code></a> function.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/differentiation/UnivariateDifferentiableFunction.html" title="interface in org.apache.commons.math3.analysis.differentiation"><span class="strong">UnivariateDifferentiableFunction</span></a> - Interface in <a href="./org/apache/commons/math3/analysis/differentiation/package-summary.html">org.apache.commons.math3.analysis.differentiation</a></dt>
<dd>
<div class="block">Interface for univariate functions derivatives.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/differentiation/UnivariateDifferentiableMatrixFunction.html" title="interface in org.apache.commons.math3.analysis.differentiation"><span class="strong">UnivariateDifferentiableMatrixFunction</span></a> - Interface in <a href="./org/apache/commons/math3/analysis/differentiation/package-summary.html">org.apache.commons.math3.analysis.differentiation</a></dt>
<dd>
<div class="block">Extension of <a href="./org/apache/commons/math3/analysis/UnivariateMatrixFunction.html" title="interface in org.apache.commons.math3.analysis"><code>UnivariateMatrixFunction</code></a> representing a univariate differentiable matrix function.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/solvers/UnivariateDifferentiableSolver.html" title="interface in org.apache.commons.math3.analysis.solvers"><span class="strong">UnivariateDifferentiableSolver</span></a> - Interface in <a href="./org/apache/commons/math3/analysis/solvers/package-summary.html">org.apache.commons.math3.analysis.solvers</a></dt>
<dd>
<div class="block">Interface for (univariate real) rootfinding algorithms.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/differentiation/UnivariateDifferentiableVectorFunction.html" title="interface in org.apache.commons.math3.analysis.differentiation"><span class="strong">UnivariateDifferentiableVectorFunction</span></a> - Interface in <a href="./org/apache/commons/math3/analysis/differentiation/package-summary.html">org.apache.commons.math3.analysis.differentiation</a></dt>
<dd>
<div class="block">Extension of <a href="./org/apache/commons/math3/analysis/UnivariateVectorFunction.html" title="interface in org.apache.commons.math3.analysis"><code>UnivariateVectorFunction</code></a> representing a univariate differentiable vectorial function.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/UnivariateFunction.html" title="interface in org.apache.commons.math3.analysis"><span class="strong">UnivariateFunction</span></a> - Interface in <a href="./org/apache/commons/math3/analysis/package-summary.html">org.apache.commons.math3.analysis</a></dt>
<dd>
<div class="block">An interface representing a univariate real function.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/differentiation/UnivariateFunctionDifferentiator.html" title="interface in org.apache.commons.math3.analysis.differentiation"><span class="strong">UnivariateFunctionDifferentiator</span></a> - Interface in <a href="./org/apache/commons/math3/analysis/differentiation/package-summary.html">org.apache.commons.math3.analysis.differentiation</a></dt>
<dd>
<div class="block">Interface defining the function differentiation operation.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/integration/UnivariateIntegrator.html" title="interface in org.apache.commons.math3.analysis.integration"><span class="strong">UnivariateIntegrator</span></a> - Interface in <a href="./org/apache/commons/math3/analysis/integration/package-summary.html">org.apache.commons.math3.analysis.integration</a></dt>
<dd>
<div class="block">Interface for univariate real integration algorithms.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/interpolation/UnivariateInterpolator.html" title="interface in org.apache.commons.math3.analysis.interpolation"><span class="strong">UnivariateInterpolator</span></a> - Interface in <a href="./org/apache/commons/math3/analysis/interpolation/package-summary.html">org.apache.commons.math3.analysis.interpolation</a></dt>
<dd>
<div class="block">Interface representing a univariate real interpolating function.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/UnivariateMatrixFunction.html" title="interface in org.apache.commons.math3.analysis"><span class="strong">UnivariateMatrixFunction</span></a> - Interface in <a href="./org/apache/commons/math3/analysis/package-summary.html">org.apache.commons.math3.analysis</a></dt>
<dd>
<div class="block">An interface representing a univariate matrix function.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/differentiation/UnivariateMatrixFunctionDifferentiator.html" title="interface in org.apache.commons.math3.analysis.differentiation"><span class="strong">UnivariateMatrixFunctionDifferentiator</span></a> - Interface in <a href="./org/apache/commons/math3/analysis/differentiation/package-summary.html">org.apache.commons.math3.analysis.differentiation</a></dt>
<dd>
<div class="block">Interface defining the function differentiation operation.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/univariate/UnivariateMultiStartOptimizer.html" title="class in org.apache.commons.math3.optimization.univariate"><span class="strong">UnivariateMultiStartOptimizer</span></a>&lt;<a href="./org/apache/commons/math3/optimization/univariate/UnivariateMultiStartOptimizer.html" title="type parameter in UnivariateMultiStartOptimizer">FUNC</a> extends <a href="./org/apache/commons/math3/analysis/UnivariateFunction.html" title="interface in org.apache.commons.math3.analysis">UnivariateFunction</a>&gt; - Class in <a href="./org/apache/commons/math3/optimization/univariate/package-summary.html">org.apache.commons.math3.optimization.univariate</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/UnivariateMultiStartOptimizer.html#UnivariateMultiStartOptimizer(org.apache.commons.math3.optimization.univariate.BaseUnivariateOptimizer, int, org.apache.commons.math3.random.RandomGenerator)">UnivariateMultiStartOptimizer(BaseUnivariateOptimizer&lt;FUNC&gt;, int, RandomGenerator)</a></span> - Constructor for class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/UnivariateMultiStartOptimizer.html" title="class in org.apache.commons.math3.optimization.univariate">UnivariateMultiStartOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Create a multi-start optimizer from a single-start optimizer.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/univariate/UnivariateObjectiveFunction.html" title="class in org.apache.commons.math3.optim.univariate"><span class="strong">UnivariateObjectiveFunction</span></a> - Class in <a href="./org/apache/commons/math3/optim/univariate/package-summary.html">org.apache.commons.math3.optim.univariate</a></dt>
<dd>
<div class="block">Scalar function to be optimized.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/UnivariateObjectiveFunction.html#UnivariateObjectiveFunction(org.apache.commons.math3.analysis.UnivariateFunction)">UnivariateObjectiveFunction(UnivariateFunction)</a></span> - Constructor for class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/UnivariateObjectiveFunction.html" title="class in org.apache.commons.math3.optim.univariate">UnivariateObjectiveFunction</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optim/univariate/UnivariateOptimizer.html" title="class in org.apache.commons.math3.optim.univariate"><span class="strong">UnivariateOptimizer</span></a> - Class in <a href="./org/apache/commons/math3/optim/univariate/package-summary.html">org.apache.commons.math3.optim.univariate</a></dt>
<dd>
<div class="block">Base class for a univariate scalar function optimizer.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/UnivariateOptimizer.html#UnivariateOptimizer(org.apache.commons.math3.optim.ConvergenceChecker)">UnivariateOptimizer(ConvergenceChecker&lt;UnivariatePointValuePair&gt;)</a></span> - Constructor for class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/UnivariateOptimizer.html" title="class in org.apache.commons.math3.optim.univariate">UnivariateOptimizer</a></dt>
<dd>&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optimization/univariate/UnivariateOptimizer.html" title="interface in org.apache.commons.math3.optimization.univariate"><span class="strong">UnivariateOptimizer</span></a> - Interface in <a href="./org/apache/commons/math3/optimization/univariate/package-summary.html">org.apache.commons.math3.optimization.univariate</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/interpolation/UnivariatePeriodicInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation"><span class="strong">UnivariatePeriodicInterpolator</span></a> - Class in <a href="./org/apache/commons/math3/analysis/interpolation/package-summary.html">org.apache.commons.math3.analysis.interpolation</a></dt>
<dd>
<div class="block">Adapter for classes implementing the <a href="./org/apache/commons/math3/analysis/interpolation/UnivariateInterpolator.html" title="interface in org.apache.commons.math3.analysis.interpolation"><code>UnivariateInterpolator</code></a>
 interface.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/UnivariatePeriodicInterpolator.html#UnivariatePeriodicInterpolator(org.apache.commons.math3.analysis.interpolation.UnivariateInterpolator, double, int)">UnivariatePeriodicInterpolator(UnivariateInterpolator, double, int)</a></span> - Constructor for class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/UnivariatePeriodicInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">UnivariatePeriodicInterpolator</a></dt>
<dd>
<div class="block">Builds an interpolator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/UnivariatePeriodicInterpolator.html#UnivariatePeriodicInterpolator(org.apache.commons.math3.analysis.interpolation.UnivariateInterpolator, double)">UnivariatePeriodicInterpolator(UnivariateInterpolator, double)</a></span> - Constructor for class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/UnivariatePeriodicInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">UnivariatePeriodicInterpolator</a></dt>
<dd>
<div class="block">Builds an interpolator.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/univariate/UnivariatePointValuePair.html" title="class in org.apache.commons.math3.optim.univariate"><span class="strong">UnivariatePointValuePair</span></a> - Class in <a href="./org/apache/commons/math3/optim/univariate/package-summary.html">org.apache.commons.math3.optim.univariate</a></dt>
<dd>
<div class="block">This class holds a point and the value of an objective function at this
 point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/univariate/UnivariatePointValuePair.html#UnivariatePointValuePair(double, double)">UnivariatePointValuePair(double, double)</a></span> - Constructor for class org.apache.commons.math3.optim.univariate.<a href="./org/apache/commons/math3/optim/univariate/UnivariatePointValuePair.html" title="class in org.apache.commons.math3.optim.univariate">UnivariatePointValuePair</a></dt>
<dd>
<div class="block">Build a point/objective function value pair.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/univariate/UnivariatePointValuePair.html" title="class in org.apache.commons.math3.optimization.univariate"><span class="strong">UnivariatePointValuePair</span></a> - Class in <a href="./org/apache/commons/math3/optimization/univariate/package-summary.html">org.apache.commons.math3.optimization.univariate</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/univariate/UnivariatePointValuePair.html#UnivariatePointValuePair(double, double)">UnivariatePointValuePair(double, double)</a></span> - Constructor for class org.apache.commons.math3.optimization.univariate.<a href="./org/apache/commons/math3/optimization/univariate/UnivariatePointValuePair.html" title="class in org.apache.commons.math3.optimization.univariate">UnivariatePointValuePair</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Build a point/objective function value pair.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/solvers/UnivariateSolver.html" title="interface in org.apache.commons.math3.analysis.solvers"><span class="strong">UnivariateSolver</span></a> - Interface in <a href="./org/apache/commons/math3/analysis/solvers/package-summary.html">org.apache.commons.math3.analysis.solvers</a></dt>
<dd>
<div class="block">Interface for (univariate real) root-finding algorithms.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/solvers/UnivariateSolverUtils.html" title="class in org.apache.commons.math3.analysis.solvers"><span class="strong">UnivariateSolverUtils</span></a> - Class in <a href="./org/apache/commons/math3/analysis/solvers/package-summary.html">org.apache.commons.math3.analysis.solvers</a></dt>
<dd>
<div class="block">Utility routines for <a href="./org/apache/commons/math3/analysis/solvers/UnivariateSolver.html" title="interface in org.apache.commons.math3.analysis.solvers"><code>UnivariateSolver</code></a> objects.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/UnivariateStatistic.html" title="interface in org.apache.commons.math3.stat.descriptive"><span class="strong">UnivariateStatistic</span></a> - Interface in <a href="./org/apache/commons/math3/stat/descriptive/package-summary.html">org.apache.commons.math3.stat.descriptive</a></dt>
<dd>
<div class="block">Base interface implemented by all statistics.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/UnivariateVectorFunction.html" title="interface in org.apache.commons.math3.analysis"><span class="strong">UnivariateVectorFunction</span></a> - Interface in <a href="./org/apache/commons/math3/analysis/package-summary.html">org.apache.commons.math3.analysis</a></dt>
<dd>
<div class="block">An interface representing a univariate vectorial function.</div>
</dd>
<dt><a href="./org/apache/commons/math3/analysis/differentiation/UnivariateVectorFunctionDifferentiator.html" title="interface in org.apache.commons.math3.analysis.differentiation"><span class="strong">UnivariateVectorFunctionDifferentiator</span></a> - Interface in <a href="./org/apache/commons/math3/analysis/differentiation/package-summary.html">org.apache.commons.math3.analysis.differentiation</a></dt>
<dd>
<div class="block">Interface defining the function differentiation operation.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ode/UnknownParameterException.html" title="class in org.apache.commons.math3.ode"><span class="strong">UnknownParameterException</span></a> - Exception in <a href="./org/apache/commons/math3/ode/package-summary.html">org.apache.commons.math3.ode</a></dt>
<dd>
<div class="block">Exception to be thrown when a parameter is unknown.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/UnknownParameterException.html#UnknownParameterException(java.lang.String)">UnknownParameterException(String)</a></span> - Constructor for exception org.apache.commons.math3.ode.<a href="./org/apache/commons/math3/ode/UnknownParameterException.html" title="class in org.apache.commons.math3.ode">UnknownParameterException</a></dt>
<dd>
<div class="block">Construct an exception from the unknown parameter.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/MaxEval.html#unlimited()">unlimited()</a></span> - Static method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/MaxEval.html" title="class in org.apache.commons.math3.optim">MaxEval</a></dt>
<dd>
<div class="block">Factory method that creates instance of this class that represents
 a virtually unlimited number of evaluations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/MaxIter.html#unlimited()">unlimited()</a></span> - Static method in class org.apache.commons.math3.optim.<a href="./org/apache/commons/math3/optim/MaxIter.html" title="class in org.apache.commons.math3.optim">MaxIter</a></dt>
<dd>
<div class="block">Factory method that creates instance of this class that represents
 a virtually unlimited number of iterations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#unmodifiableRealVector(org.apache.commons.math3.linear.RealVector)">unmodifiableRealVector(RealVector)</a></span> - Static method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Returns an unmodifiable view of the specified vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/sofm/KohonenUpdateAction.html#update(org.apache.commons.math3.ml.neuralnet.Network, double[])">update(Network, double[])</a></span> - Method in class org.apache.commons.math3.ml.neuralnet.sofm.<a href="./org/apache/commons/math3/ml/neuralnet/sofm/KohonenUpdateAction.html" title="class in org.apache.commons.math3.ml.neuralnet.sofm">KohonenUpdateAction</a></dt>
<dd>
<div class="block">Updates the network in response to the sample <code>features</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/UpdateAction.html#update(org.apache.commons.math3.ml.neuralnet.Network, double[])">update(Network, double[])</a></span> - Method in interface org.apache.commons.math3.ml.neuralnet.<a href="./org/apache/commons/math3/ml/neuralnet/UpdateAction.html" title="interface in org.apache.commons.math3.ml.neuralnet">UpdateAction</a></dt>
<dd>
<div class="block">Updates the network in response to the sample <code>features</code>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/ml/neuralnet/UpdateAction.html" title="interface in org.apache.commons.math3.ml.neuralnet"><span class="strong">UpdateAction</span></a> - Interface in <a href="./org/apache/commons/math3/ml/neuralnet/package-summary.html">org.apache.commons.math3.ml.neuralnet</a></dt>
<dd>
<div class="block">Describes how to update the network in response to a training
 sample.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdamsIntegrator.html#updateHighOrderDerivativesPhase1(org.apache.commons.math3.linear.Array2DRowRealMatrix)">updateHighOrderDerivativesPhase1(Array2DRowRealMatrix)</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdamsIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">AdamsIntegrator</a></dt>
<dd>
<div class="block">Update the high order scaled derivatives for Adams integrators (phase 1).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdamsNordsieckTransformer.html#updateHighOrderDerivativesPhase1(org.apache.commons.math3.linear.Array2DRowRealMatrix)">updateHighOrderDerivativesPhase1(Array2DRowRealMatrix)</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdamsNordsieckTransformer.html" title="class in org.apache.commons.math3.ode.nonstiff">AdamsNordsieckTransformer</a></dt>
<dd>
<div class="block">Update the high order scaled derivatives for Adams integrators (phase 1).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdamsIntegrator.html#updateHighOrderDerivativesPhase2(double[], double[], org.apache.commons.math3.linear.Array2DRowRealMatrix)">updateHighOrderDerivativesPhase2(double[], double[], Array2DRowRealMatrix)</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdamsIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">AdamsIntegrator</a></dt>
<dd>
<div class="block">Update the high order scaled derivatives Adams integrators (phase 2).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdamsNordsieckTransformer.html#updateHighOrderDerivativesPhase2(double[], double[], org.apache.commons.math3.linear.Array2DRowRealMatrix)">updateHighOrderDerivativesPhase2(double[], double[], Array2DRowRealMatrix)</a></span> - Method in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdamsNordsieckTransformer.html" title="class in org.apache.commons.math3.ode.nonstiff">AdamsNordsieckTransformer</a></dt>
<dd>
<div class="block">Update the high order scaled derivatives Adams integrators (phase 2).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#updateJacobian()">updateJacobian()</a></span> - Method in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1. Please use <a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#computeWeightedJacobian(double[])"><code>AbstractLeastSquaresOptimizer.computeWeightedJacobian(double[])</code></a>
 instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#updateResidualsAndCost()">updateResidualsAndCost()</a></span> - Method in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1. Please use <a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#computeResiduals(double[])"><code>AbstractLeastSquaresOptimizer.computeResiduals(double[])</code></a>,
 <a href="./org/apache/commons/math3/optimization/direct/BaseAbstractMultivariateVectorOptimizer.html#computeObjectiveValue(double[])"><code>BaseAbstractMultivariateVectorOptimizer.computeObjectiveValue(double[])</code></a>, <a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#computeCost(double[])"><code>AbstractLeastSquaresOptimizer.computeCost(double[])</code></a>
 and <a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#setCost(double)"><code>AbstractLeastSquaresOptimizer.setCost(double)</code></a> instead.</i></div>
</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/regression/UpdatingMultipleLinearRegression.html" title="interface in org.apache.commons.math3.stat.regression"><span class="strong">UpdatingMultipleLinearRegression</span></a> - Interface in <a href="./org/apache/commons/math3/stat/regression/package-summary.html">org.apache.commons.math3.stat.regression</a></dt>
<dd>
<div class="block">An interface for regression models allowing for dynamic updating of the data.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/HypergeometricDistribution.html#upperCumulativeProbability(int)">upperCumulativeProbability(int)</a></span> - Method in class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/HypergeometricDistribution.html" title="class in org.apache.commons.math3.distribution">HypergeometricDistribution</a></dt>
<dd>
<div class="block">For this distribution, <code>X</code>, this method returns <code>P(X &gt;= x)</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html#UPSIDE_VARIANCE">UPSIDE_VARIANCE</a></span> - Static variable in class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">SemiVariance</a></dt>
<dd>
<div class="block">The UPSIDE Direction is used to specify that the observations above the
 cutoff point will be used to calculate SemiVariance.</div>
</dd>
</dl>
<a name="_V_">
<!--   -->
</a>
<h2 class="title">V</h2>
<dl>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/AbstractWell.html#v">v</a></span> - Variable in class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/AbstractWell.html" title="class in org.apache.commons.math3.random">AbstractWell</a></dt>
<dd>
<div class="block">Bytes pool.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html#validateCovarianceData(double[][], double[][])">validateCovarianceData(double[][], double[][])</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">AbstractMultipleLinearRegression</a></dt>
<dd>
<div class="block">Validates that the x data and covariance matrix have the same
 number of rows and that the covariance matrix is square.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html#validateSampleData(double[][], double[])">validateSampleData(double[][], double[])</a></span> - Method in class org.apache.commons.math3.stat.regression.<a href="./org/apache/commons/math3/stat/regression/AbstractMultipleLinearRegression.html" title="class in org.apache.commons.math3.stat.regression">AbstractMultipleLinearRegression</a></dt>
<dd>
<div class="block">Validates sample data.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/BivariateFunction.html#value(double, double)">value(double, double)</a></span> - Method in interface org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/BivariateFunction.html" title="interface in org.apache.commons.math3.analysis">BivariateFunction</a></dt>
<dd>
<div class="block">Compute the value for the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/GradientFunction.html#value(double[])">value(double[])</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/GradientFunction.html" title="class in org.apache.commons.math3.analysis.differentiation">GradientFunction</a></dt>
<dd>
<div class="block">Compute the value for the function at the given point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/JacobianFunction.html#value(double[])">value(double[])</a></span> - Method in class org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/JacobianFunction.html" title="class in org.apache.commons.math3.analysis.differentiation">JacobianFunction</a></dt>
<dd>
<div class="block">Compute the value for the function at the given point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/MultivariateDifferentiableFunction.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure[])">value(DerivativeStructure[])</a></span> - Method in interface org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/MultivariateDifferentiableFunction.html" title="interface in org.apache.commons.math3.analysis.differentiation">MultivariateDifferentiableFunction</a></dt>
<dd>
<div class="block">Compute the value for the function at the given point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/MultivariateDifferentiableVectorFunction.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure[])">value(DerivativeStructure[])</a></span> - Method in interface org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/MultivariateDifferentiableVectorFunction.html" title="interface in org.apache.commons.math3.analysis.differentiation">MultivariateDifferentiableVectorFunction</a></dt>
<dd>
<div class="block">Compute the value for the function at the given point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/UnivariateDifferentiableFunction.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in interface org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/UnivariateDifferentiableFunction.html" title="interface in org.apache.commons.math3.analysis.differentiation">UnivariateDifferentiableFunction</a></dt>
<dd>
<div class="block">Simple mathematical function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/UnivariateDifferentiableMatrixFunction.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in interface org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/UnivariateDifferentiableMatrixFunction.html" title="interface in org.apache.commons.math3.analysis.differentiation">UnivariateDifferentiableMatrixFunction</a></dt>
<dd>
<div class="block">Compute the value for the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/differentiation/UnivariateDifferentiableVectorFunction.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in interface org.apache.commons.math3.analysis.differentiation.<a href="./org/apache/commons/math3/analysis/differentiation/UnivariateDifferentiableVectorFunction.html" title="interface in org.apache.commons.math3.analysis.differentiation">UnivariateDifferentiableVectorFunction</a></dt>
<dd>
<div class="block">Compute the value for the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Abs.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Abs.html" title="class in org.apache.commons.math3.analysis.function">Abs</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Acos.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Acos.html" title="class in org.apache.commons.math3.analysis.function">Acos</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Acos.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Acos.html" title="class in org.apache.commons.math3.analysis.function">Acos</a></dt>
<dd>
<div class="block">Simple mathematical function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Acosh.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Acosh.html" title="class in org.apache.commons.math3.analysis.function">Acosh</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Acosh.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Acosh.html" title="class in org.apache.commons.math3.analysis.function">Acosh</a></dt>
<dd>
<div class="block">Simple mathematical function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Add.html#value(double, double)">value(double, double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Add.html" title="class in org.apache.commons.math3.analysis.function">Add</a></dt>
<dd>
<div class="block">Compute the value for the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Asin.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Asin.html" title="class in org.apache.commons.math3.analysis.function">Asin</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Asin.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Asin.html" title="class in org.apache.commons.math3.analysis.function">Asin</a></dt>
<dd>
<div class="block">Simple mathematical function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Asinh.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Asinh.html" title="class in org.apache.commons.math3.analysis.function">Asinh</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Asinh.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Asinh.html" title="class in org.apache.commons.math3.analysis.function">Asinh</a></dt>
<dd>
<div class="block">Simple mathematical function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Atan.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Atan.html" title="class in org.apache.commons.math3.analysis.function">Atan</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Atan.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Atan.html" title="class in org.apache.commons.math3.analysis.function">Atan</a></dt>
<dd>
<div class="block">Simple mathematical function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Atan2.html#value(double, double)">value(double, double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Atan2.html" title="class in org.apache.commons.math3.analysis.function">Atan2</a></dt>
<dd>
<div class="block">Compute the value for the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Atanh.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Atanh.html" title="class in org.apache.commons.math3.analysis.function">Atanh</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Atanh.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Atanh.html" title="class in org.apache.commons.math3.analysis.function">Atanh</a></dt>
<dd>
<div class="block">Simple mathematical function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Cbrt.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Cbrt.html" title="class in org.apache.commons.math3.analysis.function">Cbrt</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Cbrt.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Cbrt.html" title="class in org.apache.commons.math3.analysis.function">Cbrt</a></dt>
<dd>
<div class="block">Simple mathematical function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Ceil.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Ceil.html" title="class in org.apache.commons.math3.analysis.function">Ceil</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Constant.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Constant.html" title="class in org.apache.commons.math3.analysis.function">Constant</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Constant.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Constant.html" title="class in org.apache.commons.math3.analysis.function">Constant</a></dt>
<dd>
<div class="block">Simple mathematical function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Cos.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Cos.html" title="class in org.apache.commons.math3.analysis.function">Cos</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Cos.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Cos.html" title="class in org.apache.commons.math3.analysis.function">Cos</a></dt>
<dd>
<div class="block">Simple mathematical function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Cosh.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Cosh.html" title="class in org.apache.commons.math3.analysis.function">Cosh</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Cosh.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Cosh.html" title="class in org.apache.commons.math3.analysis.function">Cosh</a></dt>
<dd>
<div class="block">Simple mathematical function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Divide.html#value(double, double)">value(double, double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Divide.html" title="class in org.apache.commons.math3.analysis.function">Divide</a></dt>
<dd>
<div class="block">Compute the value for the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Exp.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Exp.html" title="class in org.apache.commons.math3.analysis.function">Exp</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Exp.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Exp.html" title="class in org.apache.commons.math3.analysis.function">Exp</a></dt>
<dd>
<div class="block">Simple mathematical function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Expm1.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Expm1.html" title="class in org.apache.commons.math3.analysis.function">Expm1</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Expm1.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Expm1.html" title="class in org.apache.commons.math3.analysis.function">Expm1</a></dt>
<dd>
<div class="block">Simple mathematical function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Floor.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Floor.html" title="class in org.apache.commons.math3.analysis.function">Floor</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Gaussian.Parametric.html#value(double, double...)">value(double, double...)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Gaussian.Parametric.html" title="class in org.apache.commons.math3.analysis.function">Gaussian.Parametric</a></dt>
<dd>
<div class="block">Computes the value of the Gaussian at <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Gaussian.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Gaussian.html" title="class in org.apache.commons.math3.analysis.function">Gaussian</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Gaussian.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Gaussian.html" title="class in org.apache.commons.math3.analysis.function">Gaussian</a></dt>
<dd>
<div class="block">Simple mathematical function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/HarmonicOscillator.Parametric.html#value(double, double...)">value(double, double...)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/HarmonicOscillator.Parametric.html" title="class in org.apache.commons.math3.analysis.function">HarmonicOscillator.Parametric</a></dt>
<dd>
<div class="block">Computes the value of the harmonic oscillator at <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/HarmonicOscillator.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/HarmonicOscillator.html" title="class in org.apache.commons.math3.analysis.function">HarmonicOscillator</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/HarmonicOscillator.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/HarmonicOscillator.html" title="class in org.apache.commons.math3.analysis.function">HarmonicOscillator</a></dt>
<dd>
<div class="block">Simple mathematical function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Identity.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Identity.html" title="class in org.apache.commons.math3.analysis.function">Identity</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Identity.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Identity.html" title="class in org.apache.commons.math3.analysis.function">Identity</a></dt>
<dd>
<div class="block">Simple mathematical function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Inverse.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Inverse.html" title="class in org.apache.commons.math3.analysis.function">Inverse</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Inverse.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Inverse.html" title="class in org.apache.commons.math3.analysis.function">Inverse</a></dt>
<dd>
<div class="block">Simple mathematical function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Log.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Log.html" title="class in org.apache.commons.math3.analysis.function">Log</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Log.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Log.html" title="class in org.apache.commons.math3.analysis.function">Log</a></dt>
<dd>
<div class="block">Simple mathematical function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Log10.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Log10.html" title="class in org.apache.commons.math3.analysis.function">Log10</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Log10.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Log10.html" title="class in org.apache.commons.math3.analysis.function">Log10</a></dt>
<dd>
<div class="block">Simple mathematical function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Log1p.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Log1p.html" title="class in org.apache.commons.math3.analysis.function">Log1p</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Log1p.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Log1p.html" title="class in org.apache.commons.math3.analysis.function">Log1p</a></dt>
<dd>
<div class="block">Simple mathematical function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Logistic.Parametric.html#value(double, double...)">value(double, double...)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Logistic.Parametric.html" title="class in org.apache.commons.math3.analysis.function">Logistic.Parametric</a></dt>
<dd>
<div class="block">Computes the value of the sigmoid at <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Logistic.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Logistic.html" title="class in org.apache.commons.math3.analysis.function">Logistic</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Logistic.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Logistic.html" title="class in org.apache.commons.math3.analysis.function">Logistic</a></dt>
<dd>
<div class="block">Simple mathematical function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Logit.Parametric.html#value(double, double...)">value(double, double...)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Logit.Parametric.html" title="class in org.apache.commons.math3.analysis.function">Logit.Parametric</a></dt>
<dd>
<div class="block">Computes the value of the logit at <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Logit.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Logit.html" title="class in org.apache.commons.math3.analysis.function">Logit</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Logit.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Logit.html" title="class in org.apache.commons.math3.analysis.function">Logit</a></dt>
<dd>
<div class="block">Simple mathematical function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Max.html#value(double, double)">value(double, double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Max.html" title="class in org.apache.commons.math3.analysis.function">Max</a></dt>
<dd>
<div class="block">Compute the value for the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Min.html#value(double, double)">value(double, double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Min.html" title="class in org.apache.commons.math3.analysis.function">Min</a></dt>
<dd>
<div class="block">Compute the value for the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Minus.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Minus.html" title="class in org.apache.commons.math3.analysis.function">Minus</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Minus.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Minus.html" title="class in org.apache.commons.math3.analysis.function">Minus</a></dt>
<dd>
<div class="block">Simple mathematical function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Multiply.html#value(double, double)">value(double, double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Multiply.html" title="class in org.apache.commons.math3.analysis.function">Multiply</a></dt>
<dd>
<div class="block">Compute the value for the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Pow.html#value(double, double)">value(double, double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Pow.html" title="class in org.apache.commons.math3.analysis.function">Pow</a></dt>
<dd>
<div class="block">Compute the value for the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Power.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Power.html" title="class in org.apache.commons.math3.analysis.function">Power</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Power.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Power.html" title="class in org.apache.commons.math3.analysis.function">Power</a></dt>
<dd>
<div class="block">Simple mathematical function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Rint.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Rint.html" title="class in org.apache.commons.math3.analysis.function">Rint</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Sigmoid.Parametric.html#value(double, double...)">value(double, double...)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Sigmoid.Parametric.html" title="class in org.apache.commons.math3.analysis.function">Sigmoid.Parametric</a></dt>
<dd>
<div class="block">Computes the value of the sigmoid at <code>x</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Sigmoid.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Sigmoid.html" title="class in org.apache.commons.math3.analysis.function">Sigmoid</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Sigmoid.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Sigmoid.html" title="class in org.apache.commons.math3.analysis.function">Sigmoid</a></dt>
<dd>
<div class="block">Simple mathematical function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Signum.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Signum.html" title="class in org.apache.commons.math3.analysis.function">Signum</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Sin.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Sin.html" title="class in org.apache.commons.math3.analysis.function">Sin</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Sin.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Sin.html" title="class in org.apache.commons.math3.analysis.function">Sin</a></dt>
<dd>
<div class="block">Simple mathematical function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Sinc.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Sinc.html" title="class in org.apache.commons.math3.analysis.function">Sinc</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Sinc.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Sinc.html" title="class in org.apache.commons.math3.analysis.function">Sinc</a></dt>
<dd>
<div class="block">Simple mathematical function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Sinh.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Sinh.html" title="class in org.apache.commons.math3.analysis.function">Sinh</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Sinh.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Sinh.html" title="class in org.apache.commons.math3.analysis.function">Sinh</a></dt>
<dd>
<div class="block">Simple mathematical function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Sqrt.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Sqrt.html" title="class in org.apache.commons.math3.analysis.function">Sqrt</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Sqrt.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Sqrt.html" title="class in org.apache.commons.math3.analysis.function">Sqrt</a></dt>
<dd>
<div class="block">Simple mathematical function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/StepFunction.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/StepFunction.html" title="class in org.apache.commons.math3.analysis.function">StepFunction</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Subtract.html#value(double, double)">value(double, double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Subtract.html" title="class in org.apache.commons.math3.analysis.function">Subtract</a></dt>
<dd>
<div class="block">Compute the value for the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Tan.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Tan.html" title="class in org.apache.commons.math3.analysis.function">Tan</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Tan.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Tan.html" title="class in org.apache.commons.math3.analysis.function">Tan</a></dt>
<dd>
<div class="block">Simple mathematical function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Tanh.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Tanh.html" title="class in org.apache.commons.math3.analysis.function">Tanh</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Tanh.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Tanh.html" title="class in org.apache.commons.math3.analysis.function">Tanh</a></dt>
<dd>
<div class="block">Simple mathematical function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/function/Ulp.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.function.<a href="./org/apache/commons/math3/analysis/function/Ulp.html" title="class in org.apache.commons.math3.analysis.function">Ulp</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/BicubicSplineInterpolatingFunction.html#value(double, double)">value(double, double)</a></span> - Method in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/BicubicSplineInterpolatingFunction.html" title="class in org.apache.commons.math3.analysis.interpolation">BicubicSplineInterpolatingFunction</a></dt>
<dd>
<div class="block">Compute the value for the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/FieldHermiteInterpolator.html#value(T)">value(T)</a></span> - Method in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/FieldHermiteInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">FieldHermiteInterpolator</a></dt>
<dd>
<div class="block">Interpolate value at a specified abscissa.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/HermiteInterpolator.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/HermiteInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">HermiteInterpolator</a></dt>
<dd>
<div class="block">Interpolate value at a specified abscissa.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/HermiteInterpolator.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/HermiteInterpolator.html" title="class in org.apache.commons.math3.analysis.interpolation">HermiteInterpolator</a></dt>
<dd>
<div class="block">Interpolate value at a specified abscissa.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/MicrosphereInterpolatingFunction.html#value(double[])">value(double[])</a></span> - Method in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/MicrosphereInterpolatingFunction.html" title="class in org.apache.commons.math3.analysis.interpolation">MicrosphereInterpolatingFunction</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/interpolation/TricubicSplineInterpolatingFunction.html#value(double, double, double)">value(double, double, double)</a></span> - Method in class org.apache.commons.math3.analysis.interpolation.<a href="./org/apache/commons/math3/analysis/interpolation/TricubicSplineInterpolatingFunction.html" title="class in org.apache.commons.math3.analysis.interpolation">TricubicSplineInterpolatingFunction</a></dt>
<dd>
<div class="block">Compute the value for the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/MultivariateFunction.html#value(double[])">value(double[])</a></span> - Method in interface org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/MultivariateFunction.html" title="interface in org.apache.commons.math3.analysis">MultivariateFunction</a></dt>
<dd>
<div class="block">Compute the value for the function at the given point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/MultivariateMatrixFunction.html#value(double[])">value(double[])</a></span> - Method in interface org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/MultivariateMatrixFunction.html" title="interface in org.apache.commons.math3.analysis">MultivariateMatrixFunction</a></dt>
<dd>
<div class="block">Compute the value for the function at the given point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/MultivariateVectorFunction.html#value(double[])">value(double[])</a></span> - Method in interface org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/MultivariateVectorFunction.html" title="interface in org.apache.commons.math3.analysis">MultivariateVectorFunction</a></dt>
<dd>
<div class="block">Compute the value for the function at the given point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/ParametricUnivariateFunction.html#value(double, double...)">value(double, double...)</a></span> - Method in interface org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/ParametricUnivariateFunction.html" title="interface in org.apache.commons.math3.analysis">ParametricUnivariateFunction</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.Parametric.html#value(double, double...)">value(double, double...)</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.Parametric.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunction.Parametric</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunction</a></dt>
<dd>
<div class="block">Compute the value of the function for the given argument.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunction.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunction</a></dt>
<dd>
<div class="block">Simple mathematical function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionLagrangeForm.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionLagrangeForm.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunctionLagrangeForm</a></dt>
<dd>
<div class="block">Calculate the function value at the given point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionNewtonForm.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionNewtonForm.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunctionNewtonForm</a></dt>
<dd>
<div class="block">Calculate the function value at the given point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionNewtonForm.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionNewtonForm.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunctionNewtonForm</a></dt>
<dd>
<div class="block">Simple mathematical function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialSplineFunction.html#value(double)">value(double)</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialSplineFunction.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialSplineFunction</a></dt>
<dd>
<div class="block">Compute the value for the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialSplineFunction.html#value(org.apache.commons.math3.analysis.differentiation.DerivativeStructure)">value(DerivativeStructure)</a></span> - Method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialSplineFunction.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialSplineFunction</a></dt>
<dd>
<div class="block">Simple mathematical function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/TrivariateFunction.html#value(double, double, double)">value(double, double, double)</a></span> - Method in interface org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/TrivariateFunction.html" title="interface in org.apache.commons.math3.analysis">TrivariateFunction</a></dt>
<dd>
<div class="block">Compute the value for the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/UnivariateFunction.html#value(double)">value(double)</a></span> - Method in interface org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/UnivariateFunction.html" title="interface in org.apache.commons.math3.analysis">UnivariateFunction</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/UnivariateMatrixFunction.html#value(double)">value(double)</a></span> - Method in interface org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/UnivariateMatrixFunction.html" title="interface in org.apache.commons.math3.analysis">UnivariateMatrixFunction</a></dt>
<dd>
<div class="block">Compute the value for the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/UnivariateVectorFunction.html#value(double)">value(double)</a></span> - Method in interface org.apache.commons.math3.analysis.<a href="./org/apache/commons/math3/analysis/UnivariateVectorFunction.html" title="interface in org.apache.commons.math3.analysis">UnivariateVectorFunction</a></dt>
<dd>
<div class="block">Compute the value for the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/UnivariateDfpFunction.html#value(org.apache.commons.math3.dfp.Dfp)">value(Dfp)</a></span> - Method in interface org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/UnivariateDfpFunction.html" title="interface in org.apache.commons.math3.dfp">UnivariateDfpFunction</a></dt>
<dd>
<div class="block">Compute the value of the function.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/MultivariateJacobianFunction.html#value(org.apache.commons.math3.linear.RealVector)">value(RealVector)</a></span> - Method in interface org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/MultivariateJacobianFunction.html" title="interface in org.apache.commons.math3.fitting.leastsquares">MultivariateJacobianFunction</a></dt>
<dd>
<div class="block">Compute the function value and its Jacobian.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/FeatureInitializer.html#value()">value()</a></span> - Method in interface org.apache.commons.math3.ml.neuralnet.<a href="./org/apache/commons/math3/ml/neuralnet/FeatureInitializer.html" title="interface in org.apache.commons.math3.ml.neuralnet">FeatureInitializer</a></dt>
<dd>
<div class="block">Selects the initial value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/sofm/LearningFactorFunction.html#value(long)">value(long)</a></span> - Method in interface org.apache.commons.math3.ml.neuralnet.sofm.<a href="./org/apache/commons/math3/ml/neuralnet/sofm/LearningFactorFunction.html" title="interface in org.apache.commons.math3.ml.neuralnet.sofm">LearningFactorFunction</a></dt>
<dd>
<div class="block">Computes the learning rate at the current call.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/sofm/NeighbourhoodSizeFunction.html#value(long)">value(long)</a></span> - Method in interface org.apache.commons.math3.ml.neuralnet.sofm.<a href="./org/apache/commons/math3/ml/neuralnet/sofm/NeighbourhoodSizeFunction.html" title="interface in org.apache.commons.math3.ml.neuralnet.sofm">NeighbourhoodSizeFunction</a></dt>
<dd>
<div class="block">Computes the neighbourhood size at the current call.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/sofm/util/ExponentialDecayFunction.html#value(long)">value(long)</a></span> - Method in class org.apache.commons.math3.ml.neuralnet.sofm.util.<a href="./org/apache/commons/math3/ml/neuralnet/sofm/util/ExponentialDecayFunction.html" title="class in org.apache.commons.math3.ml.neuralnet.sofm.util">ExponentialDecayFunction</a></dt>
<dd>
<div class="block">Computes <code>a e<sup>-numCall / b</sup></code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/sofm/util/QuasiSigmoidDecayFunction.html#value(long)">value(long)</a></span> - Method in class org.apache.commons.math3.ml.neuralnet.sofm.util.<a href="./org/apache/commons/math3/ml/neuralnet/sofm/util/QuasiSigmoidDecayFunction.html" title="class in org.apache.commons.math3.ml.neuralnet.sofm.util">QuasiSigmoidDecayFunction</a></dt>
<dd>
<div class="block">Computes the value of the learning factor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/LinearObjectiveFunction.html#value(double[])">value(double[])</a></span> - Method in class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/LinearObjectiveFunction.html" title="class in org.apache.commons.math3.optim.linear">LinearObjectiveFunction</a></dt>
<dd>
<div class="block">Computes the value of the linear equation at the current point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/LinearObjectiveFunction.html#value(org.apache.commons.math3.linear.RealVector)">value(RealVector)</a></span> - Method in class org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/LinearObjectiveFunction.html" title="class in org.apache.commons.math3.optim.linear">LinearObjectiveFunction</a></dt>
<dd>
<div class="block">Computes the value of the linear equation at the current point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/LeastSquaresConverter.html#value(double[])">value(double[])</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/LeastSquaresConverter.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar">LeastSquaresConverter</a></dt>
<dd>
<div class="block">Compute the value for the function at the given point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/MultivariateFunctionMappingAdapter.html#value(double[])">value(double[])</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/MultivariateFunctionMappingAdapter.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar">MultivariateFunctionMappingAdapter</a></dt>
<dd>
<div class="block">Compute the underlying function value from an unbounded point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/MultivariateFunctionPenaltyAdapter.html#value(double[])">value(double[])</a></span> - Method in class org.apache.commons.math3.optim.nonlinear.scalar.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/MultivariateFunctionPenaltyAdapter.html" title="class in org.apache.commons.math3.optim.nonlinear.scalar">MultivariateFunctionPenaltyAdapter</a></dt>
<dd>
<div class="block">Computes the underlying function value from an unbounded point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/MultivariateFunctionMappingAdapter.html#value(double[])">value(double[])</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/MultivariateFunctionMappingAdapter.html" title="class in org.apache.commons.math3.optimization.direct">MultivariateFunctionMappingAdapter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Compute the underlying function value from an unbounded point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/direct/MultivariateFunctionPenaltyAdapter.html#value(double[])">value(double[])</a></span> - Method in class org.apache.commons.math3.optimization.direct.<a href="./org/apache/commons/math3/optimization/direct/MultivariateFunctionPenaltyAdapter.html" title="class in org.apache.commons.math3.optimization.direct">MultivariateFunctionPenaltyAdapter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Compute the underlying function value from an unbounded point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/LeastSquaresConverter.html#value(double[])">value(double[])</a></span> - Method in class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/LeastSquaresConverter.html" title="class in org.apache.commons.math3.optimization">LeastSquaresConverter</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Compute the value for the function at the given point.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.Iterator.html#value()">value()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToDoubleHashMap.Iterator.html" title="class in org.apache.commons.math3.util">OpenIntToDoubleHashMap.Iterator</a></dt>
<dd>
<div class="block">Get the value of current entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.Iterator.html#value()">value()</a></span> - Method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/OpenIntToFieldHashMap.Iterator.html" title="class in org.apache.commons.math3.util">OpenIntToFieldHashMap.Iterator</a></dt>
<dd>
<div class="block">Get the value of current entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/AllowedSolution.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/AllowedSolution.html" title="enum in org.apache.commons.math3.analysis.solvers">AllowedSolution</a></dt>
<dd>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseSecantSolver.Method.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseSecantSolver.Method.html" title="enum in org.apache.commons.math3.analysis.solvers">BaseSecantSolver.Method</a></dt>
<dd>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#valueOf(double, double)">valueOf(double, double)</a></span> - Static method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Create a complex number given the real and imaginary parts.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#valueOf(double)">valueOf(double)</a></span> - Static method in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">Create a complex number given only the real part.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.RoundingMode.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.RoundingMode.html" title="enum in org.apache.commons.math3.dfp">DfpField.RoundingMode</a></dt>
<dd>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/util/LocalizedFormats.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.commons.math3.exception.util.<a href="./org/apache/commons/math3/exception/util/LocalizedFormats.html" title="enum in org.apache.commons.math3.exception.util">LocalizedFormats</a></dt>
<dd>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/GaussNewtonOptimizer.Decomposition.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/GaussNewtonOptimizer.Decomposition.html" title="enum in org.apache.commons.math3.fitting.leastsquares">GaussNewtonOptimizer.Decomposition</a></dt>
<dd>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/BSPTreeVisitor.Order.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/BSPTreeVisitor.Order.html" title="enum in org.apache.commons.math3.geometry.partitioning">BSPTreeVisitor.Order</a></dt>
<dd>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/Region.Location.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/Region.Location.html" title="enum in org.apache.commons.math3.geometry.partitioning">Region.Location</a></dt>
<dd>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/Side.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/Side.html" title="enum in org.apache.commons.math3.geometry.partitioning">Side</a></dt>
<dd>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/KMeansPlusPlusClusterer.EmptyClusterStrategy.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/KMeansPlusPlusClusterer.EmptyClusterStrategy.html" title="enum in org.apache.commons.math3.ml.clustering">KMeansPlusPlusClusterer.EmptyClusterStrategy</a></dt>
<dd>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/SquareNeighbourhood.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.commons.math3.ml.neuralnet.<a href="./org/apache/commons/math3/ml/neuralnet/SquareNeighbourhood.html" title="enum in org.apache.commons.math3.ml.neuralnet">SquareNeighbourhood</a></dt>
<dd>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/events/EventHandler.Action.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.commons.math3.ode.events.<a href="./org/apache/commons/math3/ode/events/EventHandler.Action.html" title="enum in org.apache.commons.math3.ode.events">EventHandler.Action</a></dt>
<dd>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/events/FilterType.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.commons.math3.ode.events.<a href="./org/apache/commons/math3/ode/events/FilterType.html" title="enum in org.apache.commons.math3.ode.events">FilterType</a></dt>
<dd>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/StepNormalizerBounds.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/StepNormalizerBounds.html" title="enum in org.apache.commons.math3.ode.sampling">StepNormalizerBounds</a></dt>
<dd>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/StepNormalizerMode.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/StepNormalizerMode.html" title="enum in org.apache.commons.math3.ode.sampling">StepNormalizerMode</a></dt>
<dd>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/PivotSelectionRule.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/PivotSelectionRule.html" title="enum in org.apache.commons.math3.optim.linear">PivotSelectionRule</a></dt>
<dd>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/Relationship.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/Relationship.html" title="enum in org.apache.commons.math3.optim.linear">Relationship</a></dt>
<dd>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/GoalType.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.commons.math3.optim.nonlinear.scalar.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/GoalType.html" title="enum in org.apache.commons.math3.optim.nonlinear.scalar">GoalType</a></dt>
<dd>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.Formula.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.commons.math3.optim.nonlinear.scalar.gradient.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.Formula.html" title="enum in org.apache.commons.math3.optim.nonlinear.scalar.gradient">NonLinearConjugateGradientOptimizer.Formula</a></dt>
<dd>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/ConjugateGradientFormula.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/ConjugateGradientFormula.html" title="enum in org.apache.commons.math3.optimization.general">ConjugateGradientFormula</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/GoalType.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/GoalType.html" title="enum in org.apache.commons.math3.optimization">GoalType</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/Relationship.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/Relationship.html" title="enum in org.apache.commons.math3.optimization.linear">Relationship</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/clustering/KMeansPlusPlusClusterer.EmptyClusterStrategy.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.commons.math3.stat.clustering.<a href="./org/apache/commons/math3/stat/clustering/KMeansPlusPlusClusterer.EmptyClusterStrategy.html" title="enum in org.apache.commons.math3.stat.clustering">KMeansPlusPlusClusterer.EmptyClusterStrategy</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.Direction.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.Direction.html" title="enum in org.apache.commons.math3.stat.descriptive.moment">SemiVariance.Direction</a></dt>
<dd>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/AlternativeHypothesis.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/AlternativeHypothesis.html" title="enum in org.apache.commons.math3.stat.inference">AlternativeHypothesis</a></dt>
<dd>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/ranking/NaNStrategy.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.commons.math3.stat.ranking.<a href="./org/apache/commons/math3/stat/ranking/NaNStrategy.html" title="enum in org.apache.commons.math3.stat.ranking">NaNStrategy</a></dt>
<dd>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/ranking/TiesStrategy.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.commons.math3.stat.ranking.<a href="./org/apache/commons/math3/stat/ranking/TiesStrategy.html" title="enum in org.apache.commons.math3.stat.ranking">TiesStrategy</a></dt>
<dd>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/DctNormalization.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/DctNormalization.html" title="enum in org.apache.commons.math3.transform">DctNormalization</a></dt>
<dd>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/DftNormalization.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/DftNormalization.html" title="enum in org.apache.commons.math3.transform">DftNormalization</a></dt>
<dd>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/DstNormalization.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/DstNormalization.html" title="enum in org.apache.commons.math3.transform">DstNormalization</a></dt>
<dd>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/TransformType.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/TransformType.html" title="enum in org.apache.commons.math3.transform">TransformType</a></dt>
<dd>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.OrderDirection.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.OrderDirection.html" title="enum in org.apache.commons.math3.util">MathArrays.OrderDirection</a></dt>
<dd>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.Position.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.Position.html" title="enum in org.apache.commons.math3.util">MathArrays.Position</a></dt>
<dd>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.ExpansionMode.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.ExpansionMode.html" title="enum in org.apache.commons.math3.util">ResizableDoubleArray.ExpansionMode</a></dt>
<dd>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/AllowedSolution.html#values()">values()</a></span> - Static method in enum org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/AllowedSolution.html" title="enum in org.apache.commons.math3.analysis.solvers">AllowedSolution</a></dt>
<dd>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseSecantSolver.Method.html#values()">values()</a></span> - Static method in enum org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseSecantSolver.Method.html" title="enum in org.apache.commons.math3.analysis.solvers">BaseSecantSolver.Method</a></dt>
<dd>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/dfp/DfpField.RoundingMode.html#values()">values()</a></span> - Static method in enum org.apache.commons.math3.dfp.<a href="./org/apache/commons/math3/dfp/DfpField.RoundingMode.html" title="enum in org.apache.commons.math3.dfp">DfpField.RoundingMode</a></dt>
<dd>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/util/LocalizedFormats.html#values()">values()</a></span> - Static method in enum org.apache.commons.math3.exception.util.<a href="./org/apache/commons/math3/exception/util/LocalizedFormats.html" title="enum in org.apache.commons.math3.exception.util">LocalizedFormats</a></dt>
<dd>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/GaussNewtonOptimizer.Decomposition.html#values()">values()</a></span> - Static method in enum org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/GaussNewtonOptimizer.Decomposition.html" title="enum in org.apache.commons.math3.fitting.leastsquares">GaussNewtonOptimizer.Decomposition</a></dt>
<dd>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/BSPTreeVisitor.Order.html#values()">values()</a></span> - Static method in enum org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/BSPTreeVisitor.Order.html" title="enum in org.apache.commons.math3.geometry.partitioning">BSPTreeVisitor.Order</a></dt>
<dd>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/Region.Location.html#values()">values()</a></span> - Static method in enum org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/Region.Location.html" title="enum in org.apache.commons.math3.geometry.partitioning">Region.Location</a></dt>
<dd>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/Side.html#values()">values()</a></span> - Static method in enum org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/Side.html" title="enum in org.apache.commons.math3.geometry.partitioning">Side</a></dt>
<dd>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/clustering/KMeansPlusPlusClusterer.EmptyClusterStrategy.html#values()">values()</a></span> - Static method in enum org.apache.commons.math3.ml.clustering.<a href="./org/apache/commons/math3/ml/clustering/KMeansPlusPlusClusterer.EmptyClusterStrategy.html" title="enum in org.apache.commons.math3.ml.clustering">KMeansPlusPlusClusterer.EmptyClusterStrategy</a></dt>
<dd>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ml/neuralnet/SquareNeighbourhood.html#values()">values()</a></span> - Static method in enum org.apache.commons.math3.ml.neuralnet.<a href="./org/apache/commons/math3/ml/neuralnet/SquareNeighbourhood.html" title="enum in org.apache.commons.math3.ml.neuralnet">SquareNeighbourhood</a></dt>
<dd>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/events/EventHandler.Action.html#values()">values()</a></span> - Static method in enum org.apache.commons.math3.ode.events.<a href="./org/apache/commons/math3/ode/events/EventHandler.Action.html" title="enum in org.apache.commons.math3.ode.events">EventHandler.Action</a></dt>
<dd>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/events/FilterType.html#values()">values()</a></span> - Static method in enum org.apache.commons.math3.ode.events.<a href="./org/apache/commons/math3/ode/events/FilterType.html" title="enum in org.apache.commons.math3.ode.events">FilterType</a></dt>
<dd>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/StepNormalizerBounds.html#values()">values()</a></span> - Static method in enum org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/StepNormalizerBounds.html" title="enum in org.apache.commons.math3.ode.sampling">StepNormalizerBounds</a></dt>
<dd>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/StepNormalizerMode.html#values()">values()</a></span> - Static method in enum org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/StepNormalizerMode.html" title="enum in org.apache.commons.math3.ode.sampling">StepNormalizerMode</a></dt>
<dd>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/PivotSelectionRule.html#values()">values()</a></span> - Static method in enum org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/PivotSelectionRule.html" title="enum in org.apache.commons.math3.optim.linear">PivotSelectionRule</a></dt>
<dd>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/linear/Relationship.html#values()">values()</a></span> - Static method in enum org.apache.commons.math3.optim.linear.<a href="./org/apache/commons/math3/optim/linear/Relationship.html" title="enum in org.apache.commons.math3.optim.linear">Relationship</a></dt>
<dd>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/GoalType.html#values()">values()</a></span> - Static method in enum org.apache.commons.math3.optim.nonlinear.scalar.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/GoalType.html" title="enum in org.apache.commons.math3.optim.nonlinear.scalar">GoalType</a></dt>
<dd>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.Formula.html#values()">values()</a></span> - Static method in enum org.apache.commons.math3.optim.nonlinear.scalar.gradient.<a href="./org/apache/commons/math3/optim/nonlinear/scalar/gradient/NonLinearConjugateGradientOptimizer.Formula.html" title="enum in org.apache.commons.math3.optim.nonlinear.scalar.gradient">NonLinearConjugateGradientOptimizer.Formula</a></dt>
<dd>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/ConjugateGradientFormula.html#values()">values()</a></span> - Static method in enum org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/ConjugateGradientFormula.html" title="enum in org.apache.commons.math3.optimization.general">ConjugateGradientFormula</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/GoalType.html#values()">values()</a></span> - Static method in enum org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/GoalType.html" title="enum in org.apache.commons.math3.optimization">GoalType</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/linear/Relationship.html#values()">values()</a></span> - Static method in enum org.apache.commons.math3.optimization.linear.<a href="./org/apache/commons/math3/optimization/linear/Relationship.html" title="enum in org.apache.commons.math3.optimization.linear">Relationship</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/clustering/KMeansPlusPlusClusterer.EmptyClusterStrategy.html#values()">values()</a></span> - Static method in enum org.apache.commons.math3.stat.clustering.<a href="./org/apache/commons/math3/stat/clustering/KMeansPlusPlusClusterer.EmptyClusterStrategy.html" title="enum in org.apache.commons.math3.stat.clustering">KMeansPlusPlusClusterer.EmptyClusterStrategy</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.Direction.html#values()">values()</a></span> - Static method in enum org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/SemiVariance.Direction.html" title="enum in org.apache.commons.math3.stat.descriptive.moment">SemiVariance.Direction</a></dt>
<dd>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/AlternativeHypothesis.html#values()">values()</a></span> - Static method in enum org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/AlternativeHypothesis.html" title="enum in org.apache.commons.math3.stat.inference">AlternativeHypothesis</a></dt>
<dd>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/ranking/NaNStrategy.html#values()">values()</a></span> - Static method in enum org.apache.commons.math3.stat.ranking.<a href="./org/apache/commons/math3/stat/ranking/NaNStrategy.html" title="enum in org.apache.commons.math3.stat.ranking">NaNStrategy</a></dt>
<dd>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/ranking/TiesStrategy.html#values()">values()</a></span> - Static method in enum org.apache.commons.math3.stat.ranking.<a href="./org/apache/commons/math3/stat/ranking/TiesStrategy.html" title="enum in org.apache.commons.math3.stat.ranking">TiesStrategy</a></dt>
<dd>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/DctNormalization.html#values()">values()</a></span> - Static method in enum org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/DctNormalization.html" title="enum in org.apache.commons.math3.transform">DctNormalization</a></dt>
<dd>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/DftNormalization.html#values()">values()</a></span> - Static method in enum org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/DftNormalization.html" title="enum in org.apache.commons.math3.transform">DftNormalization</a></dt>
<dd>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/DstNormalization.html#values()">values()</a></span> - Static method in enum org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/DstNormalization.html" title="enum in org.apache.commons.math3.transform">DstNormalization</a></dt>
<dd>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/transform/TransformType.html#values()">values()</a></span> - Static method in enum org.apache.commons.math3.transform.<a href="./org/apache/commons/math3/transform/TransformType.html" title="enum in org.apache.commons.math3.transform">TransformType</a></dt>
<dd>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.OrderDirection.html#values()">values()</a></span> - Static method in enum org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.OrderDirection.html" title="enum in org.apache.commons.math3.util">MathArrays.OrderDirection</a></dt>
<dd>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.Position.html#values()">values()</a></span> - Static method in enum org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.Position.html" title="enum in org.apache.commons.math3.util">MathArrays.Position</a></dt>
<dd>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/ResizableDoubleArray.ExpansionMode.html#values()">values()</a></span> - Static method in enum org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/ResizableDoubleArray.ExpansionMode.html" title="enum in org.apache.commons.math3.util">ResizableDoubleArray.ExpansionMode</a></dt>
<dd>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><a href="./org/apache/commons/math3/random/ValueServer.html" title="class in org.apache.commons.math3.random"><span class="strong">ValueServer</span></a> - Class in <a href="./org/apache/commons/math3/random/package-summary.html">org.apache.commons.math3.random</a></dt>
<dd>
<div class="block">Generates values for use in simulation applications.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/ValueServer.html#ValueServer()">ValueServer()</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/ValueServer.html" title="class in org.apache.commons.math3.random">ValueServer</a></dt>
<dd>
<div class="block">Creates new ValueServer</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/ValueServer.html#ValueServer(org.apache.commons.math3.random.RandomDataImpl)">ValueServer(RandomDataImpl)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/ValueServer.html" title="class in org.apache.commons.math3.random">ValueServer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>use <a href="./org/apache/commons/math3/random/ValueServer.html#ValueServer(org.apache.commons.math3.random.RandomGenerator)"><code>ValueServer.ValueServer(RandomGenerator)</code></a></i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/ValueServer.html#ValueServer(org.apache.commons.math3.random.RandomGenerator)">ValueServer(RandomGenerator)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/ValueServer.html" title="class in org.apache.commons.math3.random">ValueServer</a></dt>
<dd>
<div class="block">Construct a ValueServer instance using a RandomGenerator as its source
 of random data.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/Frequency.html#valuesIterator()">valuesIterator()</a></span> - Method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/Frequency.html" title="class in org.apache.commons.math3.stat">Frequency</a></dt>
<dd>
<div class="block">Returns an Iterator over the set of values that have been added.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html" title="class in org.apache.commons.math3.stat.descriptive.moment"><span class="strong">Variance</span></a> - Class in <a href="./org/apache/commons/math3/stat/descriptive/moment/package-summary.html">org.apache.commons.math3.stat.descriptive.moment</a></dt>
<dd>
<div class="block">Computes the variance of the available values.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html#Variance()">Variance()</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Variance</a></dt>
<dd>
<div class="block">Constructs a Variance with default (true) <code>isBiasCorrected</code>
 property.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html#Variance(org.apache.commons.math3.stat.descriptive.moment.SecondMoment)">Variance(SecondMoment)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Variance</a></dt>
<dd>
<div class="block">Constructs a Variance based on an external second moment.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html#Variance(boolean)">Variance(boolean)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Variance</a></dt>
<dd>
<div class="block">Constructs a Variance with the specified <code>isBiasCorrected</code>
 property</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html#Variance(boolean, org.apache.commons.math3.stat.descriptive.moment.SecondMoment)">Variance(boolean, SecondMoment)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Variance</a></dt>
<dd>
<div class="block">Constructs a Variance with the specified <code>isBiasCorrected</code>
 property and the supplied external second moment.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html#Variance(org.apache.commons.math3.stat.descriptive.moment.Variance)">Variance(Variance)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/Variance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">Variance</a></dt>
<dd>
<div class="block">Copy constructor, creates a new <code>Variance</code> identical
 to the <code>original</code></div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/StatUtils.html#variance(double[])">variance(double[])</a></span> - Static method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/StatUtils.html" title="class in org.apache.commons.math3.stat">StatUtils</a></dt>
<dd>
<div class="block">Returns the variance of the entries in the input array, or
 <code>Double.NaN</code> if the array is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/StatUtils.html#variance(double[], int, int)">variance(double[], int, int)</a></span> - Static method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/StatUtils.html" title="class in org.apache.commons.math3.stat">StatUtils</a></dt>
<dd>
<div class="block">Returns the variance of the entries in the specified portion of
 the input array, or <code>Double.NaN</code> if the designated subarray
 is empty.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/StatUtils.html#variance(double[], double, int, int)">variance(double[], double, int, int)</a></span> - Static method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/StatUtils.html" title="class in org.apache.commons.math3.stat">StatUtils</a></dt>
<dd>
<div class="block">Returns the variance of the entries in the specified portion of
 the input array, using the precomputed mean value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/StatUtils.html#variance(double[], double)">variance(double[], double)</a></span> - Static method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/StatUtils.html" title="class in org.apache.commons.math3.stat">StatUtils</a></dt>
<dd>
<div class="block">Returns the variance of the entries in the input array, using the
 precomputed mean value.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/StatUtils.html#varianceDifference(double[], double[], double)">varianceDifference(double[], double[], double)</a></span> - Static method in class org.apache.commons.math3.stat.<a href="./org/apache/commons/math3/stat/StatUtils.html" title="class in org.apache.commons.math3.stat">StatUtils</a></dt>
<dd>
<div class="block">Returns the variance of the (signed) differences between corresponding elements of the
 input arrays -- i.e., var(sample1[i] - sample2[i]).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html#vecAbsoluteTolerance">vecAbsoluteTolerance</a></span> - Variable in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">AdaptiveStepsizeIntegrator</a></dt>
<dd>
<div class="block">Allowed absolute vectorial error.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html#vecRelativeTolerance">vecRelativeTolerance</a></span> - Variable in class org.apache.commons.math3.ode.nonstiff.<a href="./org/apache/commons/math3/ode/nonstiff/AdaptiveStepsizeIntegrator.html" title="class in org.apache.commons.math3.ode.nonstiff">AdaptiveStepsizeIntegrator</a></dt>
<dd>
<div class="block">Allowed relative vectorial error.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/Vector.html" title="interface in org.apache.commons.math3.geometry"><span class="strong">Vector</span></a>&lt;<a href="./org/apache/commons/math3/geometry/Vector.html" title="type parameter in Vector">S</a> extends <a href="./org/apache/commons/math3/geometry/Space.html" title="interface in org.apache.commons.math3.geometry">Space</a>&gt; - Interface in <a href="./org/apache/commons/math3/geometry/package-summary.html">org.apache.commons.math3.geometry</a></dt>
<dd>
<div class="block">This interface represents a generic vector in a vectorial space or a point in an affine space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ConjugateGradient.html#VECTOR">VECTOR</a></span> - Static variable in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ConjugateGradient.html" title="class in org.apache.commons.math3.linear">ConjugateGradient</a></dt>
<dd>
<div class="block">Key for the <a href="./org/apache/commons/math3/linear/#context">exception context</a>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned"><span class="strong">Vector1D</span></a> - Class in <a href="./org/apache/commons/math3/geometry/euclidean/oned/package-summary.html">org.apache.commons.math3.geometry.euclidean.oned</a></dt>
<dd>
<div class="block">This class represents a 1D vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#Vector1D(double)">Vector1D(double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#Vector1D(double, org.apache.commons.math3.geometry.euclidean.oned.Vector1D)">Vector1D(double, Vector1D)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Multiplicative constructor
 Build a vector from another one and a scale factor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#Vector1D(double, org.apache.commons.math3.geometry.euclidean.oned.Vector1D, double, org.apache.commons.math3.geometry.euclidean.oned.Vector1D)">Vector1D(double, Vector1D, double, Vector1D)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Linear constructor
 Build a vector from two other ones and corresponding scale factors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#Vector1D(double, org.apache.commons.math3.geometry.euclidean.oned.Vector1D, double, org.apache.commons.math3.geometry.euclidean.oned.Vector1D, double, org.apache.commons.math3.geometry.euclidean.oned.Vector1D)">Vector1D(double, Vector1D, double, Vector1D, double, Vector1D)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Linear constructor
 Build a vector from three other ones and corresponding scale factors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#Vector1D(double, org.apache.commons.math3.geometry.euclidean.oned.Vector1D, double, org.apache.commons.math3.geometry.euclidean.oned.Vector1D, double, org.apache.commons.math3.geometry.euclidean.oned.Vector1D, double, org.apache.commons.math3.geometry.euclidean.oned.Vector1D)">Vector1D(double, Vector1D, double, Vector1D, double, Vector1D, double, Vector1D)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Linear constructor
 Build a vector from four other ones and corresponding scale factors.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1DFormat.html" title="class in org.apache.commons.math3.geometry.euclidean.oned"><span class="strong">Vector1DFormat</span></a> - Class in <a href="./org/apache/commons/math3/geometry/euclidean/oned/package-summary.html">org.apache.commons.math3.geometry.euclidean.oned</a></dt>
<dd>
<div class="block">Formats a 1D vector in components list format "{x}".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1DFormat.html#Vector1DFormat()">Vector1DFormat()</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1DFormat.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1DFormat</a></dt>
<dd>
<div class="block">Create an instance with default settings.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1DFormat.html#Vector1DFormat(java.text.NumberFormat)">Vector1DFormat(NumberFormat)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1DFormat.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1DFormat</a></dt>
<dd>
<div class="block">Create an instance with a custom number format for components.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1DFormat.html#Vector1DFormat(java.lang.String, java.lang.String)">Vector1DFormat(String, String)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1DFormat.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1DFormat</a></dt>
<dd>
<div class="block">Create an instance with custom prefix, suffix and separator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1DFormat.html#Vector1DFormat(java.lang.String, java.lang.String, java.text.NumberFormat)">Vector1DFormat(String, String, NumberFormat)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1DFormat.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1DFormat</a></dt>
<dd>
<div class="block">Create an instance with custom prefix, suffix, separator and format
 for components.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod"><span class="strong">Vector2D</span></a> - Class in <a href="./org/apache/commons/math3/geometry/euclidean/twod/package-summary.html">org.apache.commons.math3.geometry.euclidean.twod</a></dt>
<dd>
<div class="block">This class represents a 2D vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#Vector2D(double, double)">Vector2D(double, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#Vector2D(double[])">Vector2D(double[])</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#Vector2D(double, org.apache.commons.math3.geometry.euclidean.twod.Vector2D)">Vector2D(double, Vector2D)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Multiplicative constructor
 Build a vector from another one and a scale factor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#Vector2D(double, org.apache.commons.math3.geometry.euclidean.twod.Vector2D, double, org.apache.commons.math3.geometry.euclidean.twod.Vector2D)">Vector2D(double, Vector2D, double, Vector2D)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Linear constructor
 Build a vector from two other ones and corresponding scale factors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#Vector2D(double, org.apache.commons.math3.geometry.euclidean.twod.Vector2D, double, org.apache.commons.math3.geometry.euclidean.twod.Vector2D, double, org.apache.commons.math3.geometry.euclidean.twod.Vector2D)">Vector2D(double, Vector2D, double, Vector2D, double, Vector2D)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Linear constructor
 Build a vector from three other ones and corresponding scale factors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#Vector2D(double, org.apache.commons.math3.geometry.euclidean.twod.Vector2D, double, org.apache.commons.math3.geometry.euclidean.twod.Vector2D, double, org.apache.commons.math3.geometry.euclidean.twod.Vector2D, double, org.apache.commons.math3.geometry.euclidean.twod.Vector2D)">Vector2D(double, Vector2D, double, Vector2D, double, Vector2D, double, Vector2D)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Linear constructor
 Build a vector from four other ones and corresponding scale factors.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2DFormat.html" title="class in org.apache.commons.math3.geometry.euclidean.twod"><span class="strong">Vector2DFormat</span></a> - Class in <a href="./org/apache/commons/math3/geometry/euclidean/twod/package-summary.html">org.apache.commons.math3.geometry.euclidean.twod</a></dt>
<dd>
<div class="block">Formats a 2D vector in components list format "{x; y}".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2DFormat.html#Vector2DFormat()">Vector2DFormat()</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2DFormat.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2DFormat</a></dt>
<dd>
<div class="block">Create an instance with default settings.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2DFormat.html#Vector2DFormat(java.text.NumberFormat)">Vector2DFormat(NumberFormat)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2DFormat.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2DFormat</a></dt>
<dd>
<div class="block">Create an instance with a custom number format for components.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2DFormat.html#Vector2DFormat(java.lang.String, java.lang.String, java.lang.String)">Vector2DFormat(String, String, String)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2DFormat.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2DFormat</a></dt>
<dd>
<div class="block">Create an instance with custom prefix, suffix and separator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2DFormat.html#Vector2DFormat(java.lang.String, java.lang.String, java.lang.String, java.text.NumberFormat)">Vector2DFormat(String, String, String, NumberFormat)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2DFormat.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2DFormat</a></dt>
<dd>
<div class="block">Create an instance with custom prefix, suffix, separator and format
 for components.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed"><span class="strong">Vector3D</span></a> - Class in <a href="./org/apache/commons/math3/geometry/euclidean/threed/package-summary.html">org.apache.commons.math3.geometry.euclidean.threed</a></dt>
<dd>
<div class="block">This class implements vectors in a three-dimensional space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#Vector3D(double, double, double)">Vector3D(double, double, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#Vector3D(double[])">Vector3D(double[])</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#Vector3D(double, double)">Vector3D(double, double)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#Vector3D(double, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">Vector3D(double, Vector3D)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Multiplicative constructor
 Build a vector from another one and a scale factor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#Vector3D(double, org.apache.commons.math3.geometry.euclidean.threed.Vector3D, double, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">Vector3D(double, Vector3D, double, Vector3D)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Linear constructor
 Build a vector from two other ones and corresponding scale factors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#Vector3D(double, org.apache.commons.math3.geometry.euclidean.threed.Vector3D, double, org.apache.commons.math3.geometry.euclidean.threed.Vector3D, double, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">Vector3D(double, Vector3D, double, Vector3D, double, Vector3D)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Linear constructor
 Build a vector from three other ones and corresponding scale factors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#Vector3D(double, org.apache.commons.math3.geometry.euclidean.threed.Vector3D, double, org.apache.commons.math3.geometry.euclidean.threed.Vector3D, double, org.apache.commons.math3.geometry.euclidean.threed.Vector3D, double, org.apache.commons.math3.geometry.euclidean.threed.Vector3D)">Vector3D(double, Vector3D, double, Vector3D, double, Vector3D, double, Vector3D)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Linear constructor
 Build a vector from four other ones and corresponding scale factors.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3DFormat.html" title="class in org.apache.commons.math3.geometry.euclidean.threed"><span class="strong">Vector3DFormat</span></a> - Class in <a href="./org/apache/commons/math3/geometry/euclidean/threed/package-summary.html">org.apache.commons.math3.geometry.euclidean.threed</a></dt>
<dd>
<div class="block">Formats a 3D vector in components list format "{x; y; z}".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3DFormat.html#Vector3DFormat()">Vector3DFormat()</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3DFormat.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3DFormat</a></dt>
<dd>
<div class="block">Create an instance with default settings.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3DFormat.html#Vector3DFormat(java.text.NumberFormat)">Vector3DFormat(NumberFormat)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3DFormat.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3DFormat</a></dt>
<dd>
<div class="block">Create an instance with a custom number format for components.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3DFormat.html#Vector3DFormat(java.lang.String, java.lang.String, java.lang.String)">Vector3DFormat(String, String, String)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3DFormat.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3DFormat</a></dt>
<dd>
<div class="block">Create an instance with custom prefix, suffix and separator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3DFormat.html#Vector3DFormat(java.lang.String, java.lang.String, java.lang.String, java.text.NumberFormat)">Vector3DFormat(String, String, String, NumberFormat)</a></span> - Constructor for class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3DFormat.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3DFormat</a></dt>
<dd>
<div class="block">Create an instance with custom prefix, suffix, separator and format
 for components.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/VectorFormat.html" title="class in org.apache.commons.math3.geometry"><span class="strong">VectorFormat</span></a>&lt;<a href="./org/apache/commons/math3/geometry/VectorFormat.html" title="type parameter in VectorFormat">S</a> extends <a href="./org/apache/commons/math3/geometry/Space.html" title="interface in org.apache.commons.math3.geometry">Space</a>&gt; - Class in <a href="./org/apache/commons/math3/geometry/package-summary.html">org.apache.commons.math3.geometry</a></dt>
<dd>
<div class="block">Formats a vector in components list format "{x; y; ...}".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/VectorFormat.html#VectorFormat()">VectorFormat()</a></span> - Constructor for class org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/VectorFormat.html" title="class in org.apache.commons.math3.geometry">VectorFormat</a></dt>
<dd>
<div class="block">Create an instance with default settings.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/VectorFormat.html#VectorFormat(java.text.NumberFormat)">VectorFormat(NumberFormat)</a></span> - Constructor for class org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/VectorFormat.html" title="class in org.apache.commons.math3.geometry">VectorFormat</a></dt>
<dd>
<div class="block">Create an instance with a custom number format for components.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/VectorFormat.html#VectorFormat(java.lang.String, java.lang.String, java.lang.String)">VectorFormat(String, String, String)</a></span> - Constructor for class org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/VectorFormat.html" title="class in org.apache.commons.math3.geometry">VectorFormat</a></dt>
<dd>
<div class="block">Create an instance with custom prefix, suffix and separator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/VectorFormat.html#VectorFormat(java.lang.String, java.lang.String, java.lang.String, java.text.NumberFormat)">VectorFormat(String, String, String, NumberFormat)</a></span> - Constructor for class org.apache.commons.math3.geometry.<a href="./org/apache/commons/math3/geometry/VectorFormat.html" title="class in org.apache.commons.math3.geometry">VectorFormat</a></dt>
<dd>
<div class="block">Create an instance with custom prefix, suffix, separator and format
 for components.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/moment/VectorialCovariance.html" title="class in org.apache.commons.math3.stat.descriptive.moment"><span class="strong">VectorialCovariance</span></a> - Class in <a href="./org/apache/commons/math3/stat/descriptive/moment/package-summary.html">org.apache.commons.math3.stat.descriptive.moment</a></dt>
<dd>
<div class="block">Returns the covariance matrix of the available vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/VectorialCovariance.html#VectorialCovariance(int, boolean)">VectorialCovariance(int, boolean)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/VectorialCovariance.html" title="class in org.apache.commons.math3.stat.descriptive.moment">VectorialCovariance</a></dt>
<dd>
<div class="block">Constructs a VectorialCovariance.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/moment/VectorialMean.html" title="class in org.apache.commons.math3.stat.descriptive.moment"><span class="strong">VectorialMean</span></a> - Class in <a href="./org/apache/commons/math3/stat/descriptive/moment/package-summary.html">org.apache.commons.math3.stat.descriptive.moment</a></dt>
<dd>
<div class="block">Returns the arithmetic mean of the available vectors.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/moment/VectorialMean.html#VectorialMean(int)">VectorialMean(int)</a></span> - Constructor for class org.apache.commons.math3.stat.descriptive.moment.<a href="./org/apache/commons/math3/stat/descriptive/moment/VectorialMean.html" title="class in org.apache.commons.math3.stat.descriptive.moment">VectorialMean</a></dt>
<dd>
<div class="block">Constructs a VectorialMean.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html#verifyBracketing(double, double)">verifyBracketing(double, double)</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BaseAbstractUnivariateSolver</a></dt>
<dd>
<div class="block">Check that the endpoints specify an interval and the function takes
 opposite signs at the endpoints.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/UnivariateSolverUtils.html#verifyBracketing(org.apache.commons.math3.analysis.UnivariateFunction, double, double)">verifyBracketing(UnivariateFunction, double, double)</a></span> - Static method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/UnivariateSolverUtils.html" title="class in org.apache.commons.math3.analysis.solvers">UnivariateSolverUtils</a></dt>
<dd>
<div class="block">Check that the endpoints specify an interval and the end points
 bracket a root.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionNewtonForm.html#verifyInputArray(double[], double[])">verifyInputArray(double[], double[])</a></span> - Static method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionNewtonForm.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunctionNewtonForm</a></dt>
<dd>
<div class="block">Verifies that the input arrays are valid.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionLagrangeForm.html#verifyInterpolationArray(double[], double[], boolean)">verifyInterpolationArray(double[], double[], boolean)</a></span> - Static method in class org.apache.commons.math3.analysis.polynomials.<a href="./org/apache/commons/math3/analysis/polynomials/PolynomialFunctionLagrangeForm.html" title="class in org.apache.commons.math3.analysis.polynomials">PolynomialFunctionLagrangeForm</a></dt>
<dd>
<div class="block">Check that the interpolation arrays are valid.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html#verifyInterval(double, double)">verifyInterval(double, double)</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BaseAbstractUnivariateSolver</a></dt>
<dd>
<div class="block">Check that the endpoints specify an interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/UnivariateSolverUtils.html#verifyInterval(double, double)">verifyInterval(double, double)</a></span> - Static method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/UnivariateSolverUtils.html" title="class in org.apache.commons.math3.analysis.solvers">UnivariateSolverUtils</a></dt>
<dd>
<div class="block">Check that the endpoints specify an interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html#verifySequence(double, double, double)">verifySequence(double, double, double)</a></span> - Method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/BaseAbstractUnivariateSolver.html" title="class in org.apache.commons.math3.analysis.solvers">BaseAbstractUnivariateSolver</a></dt>
<dd>
<div class="block">Check that <code>lower &lt; initial &lt; upper</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/analysis/solvers/UnivariateSolverUtils.html#verifySequence(double, double, double)">verifySequence(double, double, double)</a></span> - Static method in class org.apache.commons.math3.analysis.solvers.<a href="./org/apache/commons/math3/analysis/solvers/UnivariateSolverUtils.html" title="class in org.apache.commons.math3.analysis.solvers">UnivariateSolverUtils</a></dt>
<dd>
<div class="block">Check that <code>lower &lt; initial &lt; upper</code>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#verifyValues(double[], int, int)">verifyValues(double[], int, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">This method is used
 to verify that the input parameters designate a subarray of positive length.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#verifyValues(double[], int, int, boolean)">verifyValues(double[], int, int, boolean)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">This method is used
 to verify that the input parameters designate a subarray of positive length.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#verifyValues(double[], double[], int, int)">verifyValues(double[], double[], int, int)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">This method is used
 to verify that the begin and length parameters designate a subarray of positive length
 and the weights are all non-negative, non-NaN, finite, and not all zero.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/MathArrays.html#verifyValues(double[], double[], int, int, boolean)">verifyValues(double[], double[], int, int, boolean)</a></span> - Static method in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/MathArrays.html" title="class in org.apache.commons.math3.util">MathArrays</a></dt>
<dd>
<div class="block">This method is used
 to verify that the begin and length parameters designate a subarray of positive length
 and the weights are all non-negative, non-NaN, finite, and not all zero.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/spherical/twod/Vertex.html" title="class in org.apache.commons.math3.geometry.spherical.twod"><span class="strong">Vertex</span></a> - Class in <a href="./org/apache/commons/math3/geometry/spherical/twod/package-summary.html">org.apache.commons.math3.geometry.spherical.twod</a></dt>
<dd>
<div class="block">Spherical polygons boundary vertex.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html#visit(org.apache.commons.math3.geometry.partitioning.BSPTreeVisitor)">visit(BSPTreeVisitor&lt;S&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/BSPTree.html" title="class in org.apache.commons.math3.geometry.partitioning">BSPTree</a></dt>
<dd>
<div class="block">Visit the BSP tree nodes.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DefaultFieldMatrixChangingVisitor.html#visit(int, int, T)">visit(int, int, T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DefaultFieldMatrixChangingVisitor.html" title="class in org.apache.commons.math3.linear">DefaultFieldMatrixChangingVisitor</a></dt>
<dd>
<div class="block">Visit one matrix entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DefaultFieldMatrixPreservingVisitor.html#visit(int, int, T)">visit(int, int, T)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DefaultFieldMatrixPreservingVisitor.html" title="class in org.apache.commons.math3.linear">DefaultFieldMatrixPreservingVisitor</a></dt>
<dd>
<div class="block">Visit one matrix entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DefaultRealMatrixChangingVisitor.html#visit(int, int, double)">visit(int, int, double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DefaultRealMatrixChangingVisitor.html" title="class in org.apache.commons.math3.linear">DefaultRealMatrixChangingVisitor</a></dt>
<dd>
<div class="block">Visit one matrix entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/DefaultRealMatrixPreservingVisitor.html#visit(int, int, double)">visit(int, int, double)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/DefaultRealMatrixPreservingVisitor.html" title="class in org.apache.commons.math3.linear">DefaultRealMatrixPreservingVisitor</a></dt>
<dd>
<div class="block">Visit one matrix entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrixChangingVisitor.html#visit(int, int, T)">visit(int, int, T)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrixChangingVisitor.html" title="interface in org.apache.commons.math3.linear">FieldMatrixChangingVisitor</a></dt>
<dd>
<div class="block">Visit one matrix entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrixPreservingVisitor.html#visit(int, int, T)">visit(int, int, T)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrixPreservingVisitor.html" title="interface in org.apache.commons.math3.linear">FieldMatrixPreservingVisitor</a></dt>
<dd>
<div class="block">Visit one matrix entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVectorChangingVisitor.html#visit(int, T)">visit(int, T)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVectorChangingVisitor.html" title="interface in org.apache.commons.math3.linear">FieldVectorChangingVisitor</a></dt>
<dd>
<div class="block">Visit one entry of the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldVectorPreservingVisitor.html#visit(int, T)">visit(int, T)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldVectorPreservingVisitor.html" title="interface in org.apache.commons.math3.linear">FieldVectorPreservingVisitor</a></dt>
<dd>
<div class="block">Visit one entry of the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrixChangingVisitor.html#visit(int, int, double)">visit(int, int, double)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrixChangingVisitor.html" title="interface in org.apache.commons.math3.linear">RealMatrixChangingVisitor</a></dt>
<dd>
<div class="block">Visit one matrix entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrixPreservingVisitor.html#visit(int, int, double)">visit(int, int, double)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrixPreservingVisitor.html" title="interface in org.apache.commons.math3.linear">RealMatrixPreservingVisitor</a></dt>
<dd>
<div class="block">Visit one matrix entry.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVectorChangingVisitor.html#visit(int, double)">visit(int, double)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVectorChangingVisitor.html" title="interface in org.apache.commons.math3.linear">RealVectorChangingVisitor</a></dt>
<dd>
<div class="block">Visit one entry of the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVectorPreservingVisitor.html#visit(int, double)">visit(int, double)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVectorPreservingVisitor.html" title="interface in org.apache.commons.math3.linear">RealVectorPreservingVisitor</a></dt>
<dd>
<div class="block">Visit one entry of the vector.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/BSPTreeVisitor.html#visitInternalNode(org.apache.commons.math3.geometry.partitioning.BSPTree)">visitInternalNode(BSPTree&lt;S&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/BSPTreeVisitor.html" title="interface in org.apache.commons.math3.geometry.partitioning">BSPTreeVisitor</a></dt>
<dd>
<div class="block">Visit a BSP tree node node having a non-null sub-hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/BSPTreeVisitor.html#visitLeafNode(org.apache.commons.math3.geometry.partitioning.BSPTree)">visitLeafNode(BSPTree&lt;S&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/BSPTreeVisitor.html" title="interface in org.apache.commons.math3.geometry.partitioning">BSPTreeVisitor</a></dt>
<dd>
<div class="block">Visit a leaf BSP tree node node having a null sub-hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/BSPTreeVisitor.html#visitOrder(org.apache.commons.math3.geometry.partitioning.BSPTree)">visitOrder(BSPTree&lt;S&gt;)</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/BSPTreeVisitor.html" title="interface in org.apache.commons.math3.geometry.partitioning">BSPTreeVisitor</a></dt>
<dd>
<div class="block">Determine the visit order for this node.</div>
</dd>
</dl>
<a name="_W_">
<!--   -->
</a>
<h2 class="title">W</h2>
<dl>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#walkInColumnOrder(org.apache.commons.math3.linear.FieldMatrixChangingVisitor)">walkInColumnOrder(FieldMatrixChangingVisitor&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) all matrix entries in column order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#walkInColumnOrder(org.apache.commons.math3.linear.FieldMatrixPreservingVisitor)">walkInColumnOrder(FieldMatrixPreservingVisitor&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) all matrix entries in column order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#walkInColumnOrder(org.apache.commons.math3.linear.FieldMatrixChangingVisitor, int, int, int, int)">walkInColumnOrder(FieldMatrixChangingVisitor&lt;T&gt;, int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) some matrix entries in column order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#walkInColumnOrder(org.apache.commons.math3.linear.FieldMatrixPreservingVisitor, int, int, int, int)">walkInColumnOrder(FieldMatrixPreservingVisitor&lt;T&gt;, int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) some matrix entries in column order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#walkInColumnOrder(org.apache.commons.math3.linear.RealMatrixChangingVisitor)">walkInColumnOrder(RealMatrixChangingVisitor)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) all matrix entries in column order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#walkInColumnOrder(org.apache.commons.math3.linear.RealMatrixPreservingVisitor)">walkInColumnOrder(RealMatrixPreservingVisitor)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) all matrix entries in column order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#walkInColumnOrder(org.apache.commons.math3.linear.RealMatrixChangingVisitor, int, int, int, int)">walkInColumnOrder(RealMatrixChangingVisitor, int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) some matrix entries in column order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#walkInColumnOrder(org.apache.commons.math3.linear.RealMatrixPreservingVisitor, int, int, int, int)">walkInColumnOrder(RealMatrixPreservingVisitor, int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) some matrix entries in column order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html#walkInColumnOrder(org.apache.commons.math3.linear.FieldMatrixChangingVisitor)">walkInColumnOrder(FieldMatrixChangingVisitor&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowFieldMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) all matrix entries in column order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html#walkInColumnOrder(org.apache.commons.math3.linear.FieldMatrixPreservingVisitor)">walkInColumnOrder(FieldMatrixPreservingVisitor&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowFieldMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) all matrix entries in column order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html#walkInColumnOrder(org.apache.commons.math3.linear.FieldMatrixChangingVisitor, int, int, int, int)">walkInColumnOrder(FieldMatrixChangingVisitor&lt;T&gt;, int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowFieldMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) some matrix entries in column order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html#walkInColumnOrder(org.apache.commons.math3.linear.FieldMatrixPreservingVisitor, int, int, int, int)">walkInColumnOrder(FieldMatrixPreservingVisitor&lt;T&gt;, int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowFieldMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) some matrix entries in column order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html#walkInColumnOrder(org.apache.commons.math3.linear.RealMatrixChangingVisitor)">walkInColumnOrder(RealMatrixChangingVisitor)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowRealMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) all matrix entries in column order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html#walkInColumnOrder(org.apache.commons.math3.linear.RealMatrixPreservingVisitor)">walkInColumnOrder(RealMatrixPreservingVisitor)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowRealMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) all matrix entries in column order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html#walkInColumnOrder(org.apache.commons.math3.linear.RealMatrixChangingVisitor, int, int, int, int)">walkInColumnOrder(RealMatrixChangingVisitor, int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowRealMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) some matrix entries in column order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html#walkInColumnOrder(org.apache.commons.math3.linear.RealMatrixPreservingVisitor, int, int, int, int)">walkInColumnOrder(RealMatrixPreservingVisitor, int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowRealMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) some matrix entries in column order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#walkInColumnOrder(org.apache.commons.math3.linear.FieldMatrixChangingVisitor)">walkInColumnOrder(FieldMatrixChangingVisitor&lt;T&gt;)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) all matrix entries in column order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#walkInColumnOrder(org.apache.commons.math3.linear.FieldMatrixPreservingVisitor)">walkInColumnOrder(FieldMatrixPreservingVisitor&lt;T&gt;)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) all matrix entries in column order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#walkInColumnOrder(org.apache.commons.math3.linear.FieldMatrixChangingVisitor, int, int, int, int)">walkInColumnOrder(FieldMatrixChangingVisitor&lt;T&gt;, int, int, int, int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) some matrix entries in column order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#walkInColumnOrder(org.apache.commons.math3.linear.FieldMatrixPreservingVisitor, int, int, int, int)">walkInColumnOrder(FieldMatrixPreservingVisitor&lt;T&gt;, int, int, int, int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) some matrix entries in column order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#walkInColumnOrder(org.apache.commons.math3.linear.RealMatrixChangingVisitor)">walkInColumnOrder(RealMatrixChangingVisitor)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) all matrix entries in column order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#walkInColumnOrder(org.apache.commons.math3.linear.RealMatrixPreservingVisitor)">walkInColumnOrder(RealMatrixPreservingVisitor)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) all matrix entries in column order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#walkInColumnOrder(org.apache.commons.math3.linear.RealMatrixChangingVisitor, int, int, int, int)">walkInColumnOrder(RealMatrixChangingVisitor, int, int, int, int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) some matrix entries in column order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#walkInColumnOrder(org.apache.commons.math3.linear.RealMatrixPreservingVisitor, int, int, int, int)">walkInColumnOrder(RealMatrixPreservingVisitor, int, int, int, int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) some matrix entries in column order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#walkInDefaultOrder(org.apache.commons.math3.linear.FieldVectorPreservingVisitor)">walkInDefaultOrder(FieldVectorPreservingVisitor&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Visits (but does not alter) all entries of this vector in default order
 (increasing index).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#walkInDefaultOrder(org.apache.commons.math3.linear.FieldVectorPreservingVisitor, int, int)">walkInDefaultOrder(FieldVectorPreservingVisitor&lt;T&gt;, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Visits (but does not alter) some entries of this vector in default order
 (increasing index).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#walkInDefaultOrder(org.apache.commons.math3.linear.FieldVectorChangingVisitor)">walkInDefaultOrder(FieldVectorChangingVisitor&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Visits (and possibly alters) all entries of this vector in default order
 (increasing index).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#walkInDefaultOrder(org.apache.commons.math3.linear.FieldVectorChangingVisitor, int, int)">walkInDefaultOrder(FieldVectorChangingVisitor&lt;T&gt;, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Visits (and possibly alters) some entries of this vector in default order
 (increasing index).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#walkInDefaultOrder(org.apache.commons.math3.linear.RealVectorPreservingVisitor)">walkInDefaultOrder(RealVectorPreservingVisitor)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Visits (but does not alter) all entries of this vector in default order
 (increasing index).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#walkInDefaultOrder(org.apache.commons.math3.linear.RealVectorPreservingVisitor, int, int)">walkInDefaultOrder(RealVectorPreservingVisitor, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Visits (but does not alter) some entries of this vector in default order
 (increasing index).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#walkInDefaultOrder(org.apache.commons.math3.linear.RealVectorChangingVisitor)">walkInDefaultOrder(RealVectorChangingVisitor)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Visits (and possibly alters) all entries of this vector in default order
 (increasing index).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#walkInDefaultOrder(org.apache.commons.math3.linear.RealVectorChangingVisitor, int, int)">walkInDefaultOrder(RealVectorChangingVisitor, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Visits (and possibly alters) some entries of this vector in default order
 (increasing index).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#walkInDefaultOrder(org.apache.commons.math3.linear.RealVectorPreservingVisitor)">walkInDefaultOrder(RealVectorPreservingVisitor)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Visits (but does not alter) all entries of this vector in default order
 (increasing index).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#walkInDefaultOrder(org.apache.commons.math3.linear.RealVectorPreservingVisitor, int, int)">walkInDefaultOrder(RealVectorPreservingVisitor, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Visits (but does not alter) some entries of this vector in default order
 (increasing index).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#walkInDefaultOrder(org.apache.commons.math3.linear.RealVectorChangingVisitor)">walkInDefaultOrder(RealVectorChangingVisitor)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Visits (and possibly alters) all entries of this vector in default order
 (increasing index).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#walkInDefaultOrder(org.apache.commons.math3.linear.RealVectorChangingVisitor, int, int)">walkInDefaultOrder(RealVectorChangingVisitor, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Visits (and possibly alters) some entries of this vector in default order
 (increasing index).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#walkInDefaultOrder(org.apache.commons.math3.linear.FieldVectorPreservingVisitor)">walkInDefaultOrder(FieldVectorPreservingVisitor&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Visits (but does not alter) all entries of this vector in default order
 (increasing index).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#walkInDefaultOrder(org.apache.commons.math3.linear.FieldVectorPreservingVisitor, int, int)">walkInDefaultOrder(FieldVectorPreservingVisitor&lt;T&gt;, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Visits (but does not alter) some entries of this vector in default order
 (increasing index).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#walkInDefaultOrder(org.apache.commons.math3.linear.FieldVectorChangingVisitor)">walkInDefaultOrder(FieldVectorChangingVisitor&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Visits (and possibly alters) all entries of this vector in default order
 (increasing index).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#walkInDefaultOrder(org.apache.commons.math3.linear.FieldVectorChangingVisitor, int, int)">walkInDefaultOrder(FieldVectorChangingVisitor&lt;T&gt;, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Visits (and possibly alters) some entries of this vector in default order
 (increasing index).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#walkInOptimizedOrder(org.apache.commons.math3.linear.FieldMatrixChangingVisitor)">walkInOptimizedOrder(FieldMatrixChangingVisitor&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) all matrix entries using the fastest possible order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#walkInOptimizedOrder(org.apache.commons.math3.linear.FieldMatrixPreservingVisitor)">walkInOptimizedOrder(FieldMatrixPreservingVisitor&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) all matrix entries using the fastest possible order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#walkInOptimizedOrder(org.apache.commons.math3.linear.FieldMatrixChangingVisitor, int, int, int, int)">walkInOptimizedOrder(FieldMatrixChangingVisitor&lt;T&gt;, int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) some matrix entries using the fastest possible order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#walkInOptimizedOrder(org.apache.commons.math3.linear.FieldMatrixPreservingVisitor, int, int, int, int)">walkInOptimizedOrder(FieldMatrixPreservingVisitor&lt;T&gt;, int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) some matrix entries using the fastest possible order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#walkInOptimizedOrder(org.apache.commons.math3.linear.RealMatrixChangingVisitor)">walkInOptimizedOrder(RealMatrixChangingVisitor)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) all matrix entries using the fastest possible order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#walkInOptimizedOrder(org.apache.commons.math3.linear.RealMatrixPreservingVisitor)">walkInOptimizedOrder(RealMatrixPreservingVisitor)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) all matrix entries using the fastest possible order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#walkInOptimizedOrder(org.apache.commons.math3.linear.RealMatrixChangingVisitor, int, int, int, int)">walkInOptimizedOrder(RealMatrixChangingVisitor, int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) some matrix entries using the fastest possible order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#walkInOptimizedOrder(org.apache.commons.math3.linear.RealMatrixPreservingVisitor, int, int, int, int)">walkInOptimizedOrder(RealMatrixPreservingVisitor, int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) some matrix entries using the fastest possible order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#walkInOptimizedOrder(org.apache.commons.math3.linear.FieldVectorPreservingVisitor)">walkInOptimizedOrder(FieldVectorPreservingVisitor&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Visits (but does not alter) all entries of this vector in optimized
 order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#walkInOptimizedOrder(org.apache.commons.math3.linear.FieldVectorPreservingVisitor, int, int)">walkInOptimizedOrder(FieldVectorPreservingVisitor&lt;T&gt;, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Visits (but does not alter) some entries of this vector in optimized
 order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#walkInOptimizedOrder(org.apache.commons.math3.linear.FieldVectorChangingVisitor)">walkInOptimizedOrder(FieldVectorChangingVisitor&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Visits (and possibly alters) all entries of this vector in optimized
 order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayFieldVector.html#walkInOptimizedOrder(org.apache.commons.math3.linear.FieldVectorChangingVisitor, int, int)">walkInOptimizedOrder(FieldVectorChangingVisitor&lt;T&gt;, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayFieldVector.html" title="class in org.apache.commons.math3.linear">ArrayFieldVector</a></dt>
<dd>
<div class="block">Visits (and possibly change) some entries of this vector in optimized
 order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#walkInOptimizedOrder(org.apache.commons.math3.linear.RealVectorPreservingVisitor)">walkInOptimizedOrder(RealVectorPreservingVisitor)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Visits (but does not alter) all entries of this vector in optimized
 order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#walkInOptimizedOrder(org.apache.commons.math3.linear.RealVectorPreservingVisitor, int, int)">walkInOptimizedOrder(RealVectorPreservingVisitor, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Visits (but does not alter) some entries of this vector in optimized
 order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#walkInOptimizedOrder(org.apache.commons.math3.linear.RealVectorChangingVisitor)">walkInOptimizedOrder(RealVectorChangingVisitor)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Visits (and possibly alters) all entries of this vector in optimized
 order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/ArrayRealVector.html#walkInOptimizedOrder(org.apache.commons.math3.linear.RealVectorChangingVisitor, int, int)">walkInOptimizedOrder(RealVectorChangingVisitor, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/ArrayRealVector.html" title="class in org.apache.commons.math3.linear">ArrayRealVector</a></dt>
<dd>
<div class="block">Visits (and possibly change) some entries of this vector in optimized
 order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#walkInOptimizedOrder(org.apache.commons.math3.linear.FieldMatrixChangingVisitor)">walkInOptimizedOrder(FieldMatrixChangingVisitor&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) all matrix entries using the fastest possible order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#walkInOptimizedOrder(org.apache.commons.math3.linear.FieldMatrixPreservingVisitor)">walkInOptimizedOrder(FieldMatrixPreservingVisitor&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) all matrix entries using the fastest possible order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#walkInOptimizedOrder(org.apache.commons.math3.linear.FieldMatrixChangingVisitor, int, int, int, int)">walkInOptimizedOrder(FieldMatrixChangingVisitor&lt;T&gt;, int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) some matrix entries using the fastest possible order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#walkInOptimizedOrder(org.apache.commons.math3.linear.FieldMatrixPreservingVisitor, int, int, int, int)">walkInOptimizedOrder(FieldMatrixPreservingVisitor&lt;T&gt;, int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) some matrix entries using the fastest possible order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#walkInOptimizedOrder(org.apache.commons.math3.linear.RealMatrixChangingVisitor)">walkInOptimizedOrder(RealMatrixChangingVisitor)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) all matrix entries using the fastest possible order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#walkInOptimizedOrder(org.apache.commons.math3.linear.RealMatrixPreservingVisitor)">walkInOptimizedOrder(RealMatrixPreservingVisitor)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) all matrix entries using the fastest possible order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#walkInOptimizedOrder(org.apache.commons.math3.linear.RealMatrixChangingVisitor, int, int, int, int)">walkInOptimizedOrder(RealMatrixChangingVisitor, int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) some matrix entries using the fastest possible order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#walkInOptimizedOrder(org.apache.commons.math3.linear.RealMatrixPreservingVisitor, int, int, int, int)">walkInOptimizedOrder(RealMatrixPreservingVisitor, int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) some matrix entries using the fastest possible order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#walkInOptimizedOrder(org.apache.commons.math3.linear.FieldMatrixChangingVisitor)">walkInOptimizedOrder(FieldMatrixChangingVisitor&lt;T&gt;)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) all matrix entries using the fastest possible order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#walkInOptimizedOrder(org.apache.commons.math3.linear.FieldMatrixPreservingVisitor)">walkInOptimizedOrder(FieldMatrixPreservingVisitor&lt;T&gt;)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) all matrix entries using the fastest possible order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#walkInOptimizedOrder(org.apache.commons.math3.linear.FieldMatrixChangingVisitor, int, int, int, int)">walkInOptimizedOrder(FieldMatrixChangingVisitor&lt;T&gt;, int, int, int, int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) some matrix entries using the fastest possible order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#walkInOptimizedOrder(org.apache.commons.math3.linear.FieldMatrixPreservingVisitor, int, int, int, int)">walkInOptimizedOrder(FieldMatrixPreservingVisitor&lt;T&gt;, int, int, int, int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) some matrix entries using the fastest possible order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#walkInOptimizedOrder(org.apache.commons.math3.linear.RealMatrixChangingVisitor)">walkInOptimizedOrder(RealMatrixChangingVisitor)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) all matrix entries using the fastest possible order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#walkInOptimizedOrder(org.apache.commons.math3.linear.RealMatrixPreservingVisitor)">walkInOptimizedOrder(RealMatrixPreservingVisitor)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) all matrix entries using the fastest possible order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#walkInOptimizedOrder(org.apache.commons.math3.linear.RealMatrixChangingVisitor, int, int, int, int)">walkInOptimizedOrder(RealMatrixChangingVisitor, int, int, int, int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) some matrix entries using the fastest possible order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#walkInOptimizedOrder(org.apache.commons.math3.linear.RealMatrixPreservingVisitor, int, int, int, int)">walkInOptimizedOrder(RealMatrixPreservingVisitor, int, int, int, int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) some matrix entries using the fastest possible order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#walkInOptimizedOrder(org.apache.commons.math3.linear.RealVectorPreservingVisitor)">walkInOptimizedOrder(RealVectorPreservingVisitor)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Visits (but does not alter) all entries of this vector in optimized
 order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#walkInOptimizedOrder(org.apache.commons.math3.linear.RealVectorPreservingVisitor, int, int)">walkInOptimizedOrder(RealVectorPreservingVisitor, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Visits (but does not alter) some entries of this vector in optimized
 order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#walkInOptimizedOrder(org.apache.commons.math3.linear.RealVectorChangingVisitor)">walkInOptimizedOrder(RealVectorChangingVisitor)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Visits (and possibly alters) all entries of this vector in optimized
 order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealVector.html#walkInOptimizedOrder(org.apache.commons.math3.linear.RealVectorChangingVisitor, int, int)">walkInOptimizedOrder(RealVectorChangingVisitor, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealVector.html" title="class in org.apache.commons.math3.linear">RealVector</a></dt>
<dd>
<div class="block">Visits (and possibly change) some entries of this vector in optimized
 order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#walkInOptimizedOrder(org.apache.commons.math3.linear.FieldVectorPreservingVisitor)">walkInOptimizedOrder(FieldVectorPreservingVisitor&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Visits (but does not alter) all entries of this vector in optimized
 order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#walkInOptimizedOrder(org.apache.commons.math3.linear.FieldVectorPreservingVisitor, int, int)">walkInOptimizedOrder(FieldVectorPreservingVisitor&lt;T&gt;, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Visits (but does not alter) some entries of this vector in optimized
 order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#walkInOptimizedOrder(org.apache.commons.math3.linear.FieldVectorChangingVisitor)">walkInOptimizedOrder(FieldVectorChangingVisitor&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Visits (and possibly alters) all entries of this vector in optimized
 order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/SparseFieldVector.html#walkInOptimizedOrder(org.apache.commons.math3.linear.FieldVectorChangingVisitor, int, int)">walkInOptimizedOrder(FieldVectorChangingVisitor&lt;T&gt;, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/SparseFieldVector.html" title="class in org.apache.commons.math3.linear">SparseFieldVector</a></dt>
<dd>
<div class="block">Visits (and possibly change) some entries of this vector in optimized
 order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#walkInRowOrder(org.apache.commons.math3.linear.FieldMatrixChangingVisitor)">walkInRowOrder(FieldMatrixChangingVisitor&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) all matrix entries in row order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#walkInRowOrder(org.apache.commons.math3.linear.FieldMatrixPreservingVisitor)">walkInRowOrder(FieldMatrixPreservingVisitor&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) all matrix entries in row order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#walkInRowOrder(org.apache.commons.math3.linear.FieldMatrixChangingVisitor, int, int, int, int)">walkInRowOrder(FieldMatrixChangingVisitor&lt;T&gt;, int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) some matrix entries in row order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html#walkInRowOrder(org.apache.commons.math3.linear.FieldMatrixPreservingVisitor, int, int, int, int)">walkInRowOrder(FieldMatrixPreservingVisitor&lt;T&gt;, int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractFieldMatrix.html" title="class in org.apache.commons.math3.linear">AbstractFieldMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) some matrix entries in row order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#walkInRowOrder(org.apache.commons.math3.linear.RealMatrixChangingVisitor)">walkInRowOrder(RealMatrixChangingVisitor)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) all matrix entries in row order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#walkInRowOrder(org.apache.commons.math3.linear.RealMatrixPreservingVisitor)">walkInRowOrder(RealMatrixPreservingVisitor)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) all matrix entries in row order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#walkInRowOrder(org.apache.commons.math3.linear.RealMatrixChangingVisitor, int, int, int, int)">walkInRowOrder(RealMatrixChangingVisitor, int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) some matrix entries in row order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html#walkInRowOrder(org.apache.commons.math3.linear.RealMatrixPreservingVisitor, int, int, int, int)">walkInRowOrder(RealMatrixPreservingVisitor, int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/AbstractRealMatrix.html" title="class in org.apache.commons.math3.linear">AbstractRealMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) some matrix entries in row order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html#walkInRowOrder(org.apache.commons.math3.linear.FieldMatrixChangingVisitor)">walkInRowOrder(FieldMatrixChangingVisitor&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowFieldMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) all matrix entries in row order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html#walkInRowOrder(org.apache.commons.math3.linear.FieldMatrixPreservingVisitor)">walkInRowOrder(FieldMatrixPreservingVisitor&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowFieldMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) all matrix entries in row order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html#walkInRowOrder(org.apache.commons.math3.linear.FieldMatrixChangingVisitor, int, int, int, int)">walkInRowOrder(FieldMatrixChangingVisitor&lt;T&gt;, int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowFieldMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) some matrix entries in row order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html#walkInRowOrder(org.apache.commons.math3.linear.FieldMatrixPreservingVisitor, int, int, int, int)">walkInRowOrder(FieldMatrixPreservingVisitor&lt;T&gt;, int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowFieldMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowFieldMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) some matrix entries in row order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html#walkInRowOrder(org.apache.commons.math3.linear.RealMatrixChangingVisitor)">walkInRowOrder(RealMatrixChangingVisitor)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowRealMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) all matrix entries in row order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html#walkInRowOrder(org.apache.commons.math3.linear.RealMatrixPreservingVisitor)">walkInRowOrder(RealMatrixPreservingVisitor)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowRealMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) all matrix entries in row order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html#walkInRowOrder(org.apache.commons.math3.linear.RealMatrixChangingVisitor, int, int, int, int)">walkInRowOrder(RealMatrixChangingVisitor, int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowRealMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) some matrix entries in row order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html#walkInRowOrder(org.apache.commons.math3.linear.RealMatrixPreservingVisitor, int, int, int, int)">walkInRowOrder(RealMatrixPreservingVisitor, int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/Array2DRowRealMatrix.html" title="class in org.apache.commons.math3.linear">Array2DRowRealMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) some matrix entries in row order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#walkInRowOrder(org.apache.commons.math3.linear.FieldMatrixChangingVisitor)">walkInRowOrder(FieldMatrixChangingVisitor&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) all matrix entries in row order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#walkInRowOrder(org.apache.commons.math3.linear.FieldMatrixPreservingVisitor)">walkInRowOrder(FieldMatrixPreservingVisitor&lt;T&gt;)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) all matrix entries in row order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#walkInRowOrder(org.apache.commons.math3.linear.FieldMatrixChangingVisitor, int, int, int, int)">walkInRowOrder(FieldMatrixChangingVisitor&lt;T&gt;, int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) some matrix entries in row order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html#walkInRowOrder(org.apache.commons.math3.linear.FieldMatrixPreservingVisitor, int, int, int, int)">walkInRowOrder(FieldMatrixPreservingVisitor&lt;T&gt;, int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockFieldMatrix.html" title="class in org.apache.commons.math3.linear">BlockFieldMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) some matrix entries in row order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#walkInRowOrder(org.apache.commons.math3.linear.RealMatrixChangingVisitor)">walkInRowOrder(RealMatrixChangingVisitor)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) all matrix entries in row order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#walkInRowOrder(org.apache.commons.math3.linear.RealMatrixPreservingVisitor)">walkInRowOrder(RealMatrixPreservingVisitor)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) all matrix entries in row order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#walkInRowOrder(org.apache.commons.math3.linear.RealMatrixChangingVisitor, int, int, int, int)">walkInRowOrder(RealMatrixChangingVisitor, int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) some matrix entries in row order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/BlockRealMatrix.html#walkInRowOrder(org.apache.commons.math3.linear.RealMatrixPreservingVisitor, int, int, int, int)">walkInRowOrder(RealMatrixPreservingVisitor, int, int, int, int)</a></span> - Method in class org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/BlockRealMatrix.html" title="class in org.apache.commons.math3.linear">BlockRealMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) some matrix entries in row order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#walkInRowOrder(org.apache.commons.math3.linear.FieldMatrixChangingVisitor)">walkInRowOrder(FieldMatrixChangingVisitor&lt;T&gt;)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) all matrix entries in row order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#walkInRowOrder(org.apache.commons.math3.linear.FieldMatrixPreservingVisitor)">walkInRowOrder(FieldMatrixPreservingVisitor&lt;T&gt;)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) all matrix entries in row order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#walkInRowOrder(org.apache.commons.math3.linear.FieldMatrixChangingVisitor, int, int, int, int)">walkInRowOrder(FieldMatrixChangingVisitor&lt;T&gt;, int, int, int, int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) some matrix entries in row order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/FieldMatrix.html#walkInRowOrder(org.apache.commons.math3.linear.FieldMatrixPreservingVisitor, int, int, int, int)">walkInRowOrder(FieldMatrixPreservingVisitor&lt;T&gt;, int, int, int, int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/FieldMatrix.html" title="interface in org.apache.commons.math3.linear">FieldMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) some matrix entries in row order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#walkInRowOrder(org.apache.commons.math3.linear.RealMatrixChangingVisitor)">walkInRowOrder(RealMatrixChangingVisitor)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) all matrix entries in row order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#walkInRowOrder(org.apache.commons.math3.linear.RealMatrixPreservingVisitor)">walkInRowOrder(RealMatrixPreservingVisitor)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) all matrix entries in row order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#walkInRowOrder(org.apache.commons.math3.linear.RealMatrixChangingVisitor, int, int, int, int)">walkInRowOrder(RealMatrixChangingVisitor, int, int, int, int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Visit (and possibly change) some matrix entries in row order.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/linear/RealMatrix.html#walkInRowOrder(org.apache.commons.math3.linear.RealMatrixPreservingVisitor, int, int, int, int)">walkInRowOrder(RealMatrixPreservingVisitor, int, int, int, int)</a></span> - Method in interface org.apache.commons.math3.linear.<a href="./org/apache/commons/math3/linear/RealMatrix.html" title="interface in org.apache.commons.math3.linear">RealMatrix</a></dt>
<dd>
<div class="block">Visit (but don't change) some matrix entries in row order.</div>
</dd>
<dt><a href="./org/apache/commons/math3/distribution/WeibullDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">WeibullDistribution</span></a> - Class in <a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a></dt>
<dd>
<div class="block">Implementation of the Weibull distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/WeibullDistribution.html#WeibullDistribution(double, double)">WeibullDistribution(double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/WeibullDistribution.html" title="class in org.apache.commons.math3.distribution">WeibullDistribution</a></dt>
<dd>
<div class="block">Create a Weibull distribution with the given shape and scale and a
 location equal to zero.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/WeibullDistribution.html#WeibullDistribution(double, double, double)">WeibullDistribution(double, double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/WeibullDistribution.html" title="class in org.apache.commons.math3.distribution">WeibullDistribution</a></dt>
<dd>
<div class="block">Create a Weibull distribution with the given shape, scale and inverse
 cumulative probability accuracy and a location equal to zero.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/WeibullDistribution.html#WeibullDistribution(org.apache.commons.math3.random.RandomGenerator, double, double)">WeibullDistribution(RandomGenerator, double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/WeibullDistribution.html" title="class in org.apache.commons.math3.distribution">WeibullDistribution</a></dt>
<dd>
<div class="block">Creates a Weibull distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/WeibullDistribution.html#WeibullDistribution(org.apache.commons.math3.random.RandomGenerator, double, double, double)">WeibullDistribution(RandomGenerator, double, double, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/WeibullDistribution.html" title="class in org.apache.commons.math3.distribution">WeibullDistribution</a></dt>
<dd>
<div class="block">Creates a Weibull distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresBuilder.html#weight(org.apache.commons.math3.linear.RealMatrix)">weight(RealMatrix)</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresBuilder.html" title="class in org.apache.commons.math3.fitting.leastsquares">LeastSquaresBuilder</a></dt>
<dd>
<div class="block">Configure the weight matrix.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optim/nonlinear/vector/Weight.html" title="class in org.apache.commons.math3.optim.nonlinear.vector"><span class="strong">Weight</span></a> - Class in <a href="./org/apache/commons/math3/optim/nonlinear/vector/package-summary.html">org.apache.commons.math3.optim.nonlinear.vector</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>All classes and interfaces in this package are deprecated.
 The optimizers that were provided here were moved to the
 <a href="./org/apache/commons/math3/fitting/leastsquares/package-summary.html"><code>org.apache.commons.math3.fitting.leastsquares</code></a> package
 (cf. MATH-1008).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/Weight.html#Weight(double[])">Weight(double[])</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.vector.<a href="./org/apache/commons/math3/optim/nonlinear/vector/Weight.html" title="class in org.apache.commons.math3.optim.nonlinear.vector">Weight</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Creates a diagonal weight matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optim/nonlinear/vector/Weight.html#Weight(org.apache.commons.math3.linear.RealMatrix)">Weight(RealMatrix)</a></span> - Constructor for class org.apache.commons.math3.optim.nonlinear.vector.<a href="./org/apache/commons/math3/optim/nonlinear/vector/Weight.html" title="class in org.apache.commons.math3.optim.nonlinear.vector">Weight</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><a href="./org/apache/commons/math3/optimization/Weight.html" title="class in org.apache.commons.math3.optimization"><span class="strong">Weight</span></a> - Class in <a href="./org/apache/commons/math3/optimization/package-summary.html">org.apache.commons.math3.optimization</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/Weight.html#Weight(double[])">Weight(double[])</a></span> - Constructor for class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/Weight.html" title="class in org.apache.commons.math3.optimization">Weight</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Creates a diagonal weight matrix.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/Weight.html#Weight(org.apache.commons.math3.linear.RealMatrix)">Weight(RealMatrix)</a></span> - Constructor for class org.apache.commons.math3.optimization.<a href="./org/apache/commons/math3/optimization/Weight.html" title="class in org.apache.commons.math3.optimization">Weight</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresFactory.html#weightDiagonal(org.apache.commons.math3.fitting.leastsquares.LeastSquaresProblem, org.apache.commons.math3.linear.RealVector)">weightDiagonal(LeastSquaresProblem, RealVector)</a></span> - Static method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresFactory.html" title="class in org.apache.commons.math3.fitting.leastsquares">LeastSquaresFactory</a></dt>
<dd>
<div class="block">Apply a diagonal weight matrix to the <a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.html" title="interface in org.apache.commons.math3.fitting.leastsquares"><code>LeastSquaresProblem</code></a>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/descriptive/WeightedEvaluation.html" title="interface in org.apache.commons.math3.stat.descriptive"><span class="strong">WeightedEvaluation</span></a> - Interface in <a href="./org/apache/commons/math3/stat/descriptive/package-summary.html">org.apache.commons.math3.stat.descriptive</a></dt>
<dd>
<div class="block">Weighted evaluation for statistics.</div>
</dd>
<dt><a href="./org/apache/commons/math3/fitting/WeightedObservedPoint.html" title="class in org.apache.commons.math3.fitting"><span class="strong">WeightedObservedPoint</span></a> - Class in <a href="./org/apache/commons/math3/fitting/package-summary.html">org.apache.commons.math3.fitting</a></dt>
<dd>
<div class="block">This class is a simple container for weighted observed point in
 <a href="./org/apache/commons/math3/fitting/CurveFitter.html" title="class in org.apache.commons.math3.fitting"><code>curve fitting</code></a>.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/WeightedObservedPoint.html#WeightedObservedPoint(double, double, double)">WeightedObservedPoint(double, double, double)</a></span> - Constructor for class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/WeightedObservedPoint.html" title="class in org.apache.commons.math3.fitting">WeightedObservedPoint</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/optimization/fitting/WeightedObservedPoint.html" title="class in org.apache.commons.math3.optimization.fitting"><span class="strong">WeightedObservedPoint</span></a> - Class in <a href="./org/apache/commons/math3/optimization/fitting/package-summary.html">org.apache.commons.math3.optimization.fitting</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1 (to be removed in 4.0).</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/fitting/WeightedObservedPoint.html#WeightedObservedPoint(double, double, double)">WeightedObservedPoint(double, double, double)</a></span> - Constructor for class org.apache.commons.math3.optimization.fitting.<a href="./org/apache/commons/math3/optimization/fitting/WeightedObservedPoint.html" title="class in org.apache.commons.math3.optimization.fitting">WeightedObservedPoint</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span></div>
<div class="block">Simple constructor.</div>
</dd>
<dt><a href="./org/apache/commons/math3/fitting/WeightedObservedPoints.html" title="class in org.apache.commons.math3.fitting"><span class="strong">WeightedObservedPoints</span></a> - Class in <a href="./org/apache/commons/math3/fitting/package-summary.html">org.apache.commons.math3.fitting</a></dt>
<dd>
<div class="block">Simple container for weighted observed points used
 in <a href="./org/apache/commons/math3/fitting/AbstractCurveFitter.html" title="class in org.apache.commons.math3.fitting"><code>curve fitting</code></a> algorithms.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/WeightedObservedPoints.html#WeightedObservedPoints()">WeightedObservedPoints()</a></span> - Constructor for class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/WeightedObservedPoints.html" title="class in org.apache.commons.math3.fitting">WeightedObservedPoints</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#weightedResidualJacobian">weightedResidualJacobian</a></span> - Variable in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1. To be removed in 4.0. Please use
 <a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#computeWeightedJacobian(double[])"><code>AbstractLeastSquaresOptimizer.computeWeightedJacobian(double[])</code></a> instead.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html#weightedResiduals">weightedResiduals</a></span> - Variable in class org.apache.commons.math3.optimization.general.<a href="./org/apache/commons/math3/optimization/general/AbstractLeastSquaresOptimizer.html" title="class in org.apache.commons.math3.optimization.general">AbstractLeastSquaresOptimizer</a></dt>
<dd>
<div class="block"><span class="strong">Deprecated.</span>
<div class="block"><i>As of 3.1.</i></div>
</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresFactory.html#weightMatrix(org.apache.commons.math3.fitting.leastsquares.LeastSquaresProblem, org.apache.commons.math3.linear.RealMatrix)">weightMatrix(LeastSquaresProblem, RealMatrix)</a></span> - Static method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresFactory.html" title="class in org.apache.commons.math3.fitting.leastsquares">LeastSquaresFactory</a></dt>
<dd>
<div class="block">Apply a dense weight matrix to the <a href="./org/apache/commons/math3/fitting/leastsquares/LeastSquaresProblem.html" title="interface in org.apache.commons.math3.fitting.leastsquares"><code>LeastSquaresProblem</code></a>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/random/Well1024a.html" title="class in org.apache.commons.math3.random"><span class="strong">Well1024a</span></a> - Class in <a href="./org/apache/commons/math3/random/package-summary.html">org.apache.commons.math3.random</a></dt>
<dd>
<div class="block">This class implements the WELL1024a pseudo-random number generator
 from Fran&ccedil;ois Panneton, Pierre L'Ecuyer and Makoto Matsumoto.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/Well1024a.html#Well1024a()">Well1024a()</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/Well1024a.html" title="class in org.apache.commons.math3.random">Well1024a</a></dt>
<dd>
<div class="block">Creates a new random number generator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/Well1024a.html#Well1024a(int)">Well1024a(int)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/Well1024a.html" title="class in org.apache.commons.math3.random">Well1024a</a></dt>
<dd>
<div class="block">Creates a new random number generator using a single int seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/Well1024a.html#Well1024a(int[])">Well1024a(int[])</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/Well1024a.html" title="class in org.apache.commons.math3.random">Well1024a</a></dt>
<dd>
<div class="block">Creates a new random number generator using an int array seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/Well1024a.html#Well1024a(long)">Well1024a(long)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/Well1024a.html" title="class in org.apache.commons.math3.random">Well1024a</a></dt>
<dd>
<div class="block">Creates a new random number generator using a single long seed.</div>
</dd>
<dt><a href="./org/apache/commons/math3/random/Well19937a.html" title="class in org.apache.commons.math3.random"><span class="strong">Well19937a</span></a> - Class in <a href="./org/apache/commons/math3/random/package-summary.html">org.apache.commons.math3.random</a></dt>
<dd>
<div class="block">This class implements the WELL19937a pseudo-random number generator
 from Fran&ccedil;ois Panneton, Pierre L'Ecuyer and Makoto Matsumoto.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/Well19937a.html#Well19937a()">Well19937a()</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/Well19937a.html" title="class in org.apache.commons.math3.random">Well19937a</a></dt>
<dd>
<div class="block">Creates a new random number generator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/Well19937a.html#Well19937a(int)">Well19937a(int)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/Well19937a.html" title="class in org.apache.commons.math3.random">Well19937a</a></dt>
<dd>
<div class="block">Creates a new random number generator using a single int seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/Well19937a.html#Well19937a(int[])">Well19937a(int[])</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/Well19937a.html" title="class in org.apache.commons.math3.random">Well19937a</a></dt>
<dd>
<div class="block">Creates a new random number generator using an int array seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/Well19937a.html#Well19937a(long)">Well19937a(long)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/Well19937a.html" title="class in org.apache.commons.math3.random">Well19937a</a></dt>
<dd>
<div class="block">Creates a new random number generator using a single long seed.</div>
</dd>
<dt><a href="./org/apache/commons/math3/random/Well19937c.html" title="class in org.apache.commons.math3.random"><span class="strong">Well19937c</span></a> - Class in <a href="./org/apache/commons/math3/random/package-summary.html">org.apache.commons.math3.random</a></dt>
<dd>
<div class="block">This class implements the WELL19937c pseudo-random number generator
 from Fran&ccedil;ois Panneton, Pierre L'Ecuyer and Makoto Matsumoto.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/Well19937c.html#Well19937c()">Well19937c()</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/Well19937c.html" title="class in org.apache.commons.math3.random">Well19937c</a></dt>
<dd>
<div class="block">Creates a new random number generator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/Well19937c.html#Well19937c(int)">Well19937c(int)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/Well19937c.html" title="class in org.apache.commons.math3.random">Well19937c</a></dt>
<dd>
<div class="block">Creates a new random number generator using a single int seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/Well19937c.html#Well19937c(int[])">Well19937c(int[])</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/Well19937c.html" title="class in org.apache.commons.math3.random">Well19937c</a></dt>
<dd>
<div class="block">Creates a new random number generator using an int array seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/Well19937c.html#Well19937c(long)">Well19937c(long)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/Well19937c.html" title="class in org.apache.commons.math3.random">Well19937c</a></dt>
<dd>
<div class="block">Creates a new random number generator using a single long seed.</div>
</dd>
<dt><a href="./org/apache/commons/math3/random/Well44497a.html" title="class in org.apache.commons.math3.random"><span class="strong">Well44497a</span></a> - Class in <a href="./org/apache/commons/math3/random/package-summary.html">org.apache.commons.math3.random</a></dt>
<dd>
<div class="block">This class implements the WELL44497a pseudo-random number generator
 from Fran&ccedil;ois Panneton, Pierre L'Ecuyer and Makoto Matsumoto.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/Well44497a.html#Well44497a()">Well44497a()</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/Well44497a.html" title="class in org.apache.commons.math3.random">Well44497a</a></dt>
<dd>
<div class="block">Creates a new random number generator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/Well44497a.html#Well44497a(int)">Well44497a(int)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/Well44497a.html" title="class in org.apache.commons.math3.random">Well44497a</a></dt>
<dd>
<div class="block">Creates a new random number generator using a single int seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/Well44497a.html#Well44497a(int[])">Well44497a(int[])</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/Well44497a.html" title="class in org.apache.commons.math3.random">Well44497a</a></dt>
<dd>
<div class="block">Creates a new random number generator using an int array seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/Well44497a.html#Well44497a(long)">Well44497a(long)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/Well44497a.html" title="class in org.apache.commons.math3.random">Well44497a</a></dt>
<dd>
<div class="block">Creates a new random number generator using a single long seed.</div>
</dd>
<dt><a href="./org/apache/commons/math3/random/Well44497b.html" title="class in org.apache.commons.math3.random"><span class="strong">Well44497b</span></a> - Class in <a href="./org/apache/commons/math3/random/package-summary.html">org.apache.commons.math3.random</a></dt>
<dd>
<div class="block">This class implements the WELL44497b pseudo-random number generator
 from Fran&ccedil;ois Panneton, Pierre L'Ecuyer and Makoto Matsumoto.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/Well44497b.html#Well44497b()">Well44497b()</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/Well44497b.html" title="class in org.apache.commons.math3.random">Well44497b</a></dt>
<dd>
<div class="block">Creates a new random number generator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/Well44497b.html#Well44497b(int)">Well44497b(int)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/Well44497b.html" title="class in org.apache.commons.math3.random">Well44497b</a></dt>
<dd>
<div class="block">Creates a new random number generator using a single int seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/Well44497b.html#Well44497b(int[])">Well44497b(int[])</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/Well44497b.html" title="class in org.apache.commons.math3.random">Well44497b</a></dt>
<dd>
<div class="block">Creates a new random number generator using an int array seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/Well44497b.html#Well44497b(long)">Well44497b(long)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/Well44497b.html" title="class in org.apache.commons.math3.random">Well44497b</a></dt>
<dd>
<div class="block">Creates a new random number generator using a single long seed.</div>
</dd>
<dt><a href="./org/apache/commons/math3/random/Well512a.html" title="class in org.apache.commons.math3.random"><span class="strong">Well512a</span></a> - Class in <a href="./org/apache/commons/math3/random/package-summary.html">org.apache.commons.math3.random</a></dt>
<dd>
<div class="block">This class implements the WELL512a pseudo-random number generator
 from Fran&ccedil;ois Panneton, Pierre L'Ecuyer and Makoto Matsumoto.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/Well512a.html#Well512a()">Well512a()</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/Well512a.html" title="class in org.apache.commons.math3.random">Well512a</a></dt>
<dd>
<div class="block">Creates a new random number generator.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/Well512a.html#Well512a(int)">Well512a(int)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/Well512a.html" title="class in org.apache.commons.math3.random">Well512a</a></dt>
<dd>
<div class="block">Creates a new random number generator using a single int seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/Well512a.html#Well512a(int[])">Well512a(int[])</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/Well512a.html" title="class in org.apache.commons.math3.random">Well512a</a></dt>
<dd>
<div class="block">Creates a new random number generator using an int array seed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/random/Well512a.html#Well512a(long)">Well512a(long)</a></span> - Constructor for class org.apache.commons.math3.random.<a href="./org/apache/commons/math3/random/Well512a.html" title="class in org.apache.commons.math3.random">Well512a</a></dt>
<dd>
<div class="block">Creates a new random number generator using a single long seed.</div>
</dd>
<dt><a href="./org/apache/commons/math3/geometry/enclosing/WelzlEncloser.html" title="class in org.apache.commons.math3.geometry.enclosing"><span class="strong">WelzlEncloser</span></a>&lt;<a href="./org/apache/commons/math3/geometry/enclosing/WelzlEncloser.html" title="type parameter in WelzlEncloser">S</a> extends <a href="./org/apache/commons/math3/geometry/Space.html" title="interface in org.apache.commons.math3.geometry">Space</a>,<a href="./org/apache/commons/math3/geometry/enclosing/WelzlEncloser.html" title="type parameter in WelzlEncloser">P</a> extends <a href="./org/apache/commons/math3/geometry/Point.html" title="interface in org.apache.commons.math3.geometry">Point</a>&lt;<a href="./org/apache/commons/math3/geometry/enclosing/WelzlEncloser.html" title="type parameter in WelzlEncloser">S</a>&gt;&gt; - Class in <a href="./org/apache/commons/math3/geometry/enclosing/package-summary.html">org.apache.commons.math3.geometry.enclosing</a></dt>
<dd>
<div class="block">Class implementing Emo Welzl algorithm to find the smallest enclosing ball in linear time.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/enclosing/WelzlEncloser.html#WelzlEncloser(double, org.apache.commons.math3.geometry.enclosing.SupportBallGenerator)">WelzlEncloser(double, SupportBallGenerator&lt;S, P&gt;)</a></span> - Constructor for class org.apache.commons.math3.geometry.enclosing.<a href="./org/apache/commons/math3/geometry/enclosing/WelzlEncloser.html" title="class in org.apache.commons.math3.geometry.enclosing">WelzlEncloser</a></dt>
<dd>
<div class="block">Simple constructor.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/OrientedPoint.html#wholeHyperplane()">wholeHyperplane()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/OrientedPoint.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">OrientedPoint</a></dt>
<dd>
<div class="block">Build a region covering the whole hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#wholeHyperplane()">wholeHyperplane()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block">Build a region covering the whole hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#wholeHyperplane()">wholeHyperplane()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Line</a></dt>
<dd>
<div class="block">Build a sub-hyperplane covering the whole hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/Hyperplane.html#wholeHyperplane()">wholeHyperplane()</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/Hyperplane.html" title="interface in org.apache.commons.math3.geometry.partitioning">Hyperplane</a></dt>
<dd>
<div class="block">Build a sub-hyperplane covering the whole hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/LimitAngle.html#wholeHyperplane()">wholeHyperplane()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/LimitAngle.html" title="class in org.apache.commons.math3.geometry.spherical.oned">LimitAngle</a></dt>
<dd>
<div class="block">Build a region covering the whole hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html#wholeHyperplane()">wholeHyperplane()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html" title="class in org.apache.commons.math3.geometry.spherical.twod">Circle</a></dt>
<dd>
<div class="block">Build a sub-hyperplane covering the whole hyperplane.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html#wholeLine()">wholeLine()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Line</a></dt>
<dd>
<div class="block">Build a sub-line covering the whole line.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/OrientedPoint.html#wholeSpace()">wholeSpace()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/OrientedPoint.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">OrientedPoint</a></dt>
<dd>
<div class="block">Build a region covering the whole space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html#wholeSpace()">wholeSpace()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Plane.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Plane</a></dt>
<dd>
<div class="block">Build a region covering the whole space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html#wholeSpace()">wholeSpace()</a></span> - Method in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Line.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Line</a></dt>
<dd>
<div class="block">Build a region covering the whole space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/Hyperplane.html#wholeSpace()">wholeSpace()</a></span> - Method in interface org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/Hyperplane.html" title="interface in org.apache.commons.math3.geometry.partitioning">Hyperplane</a></dt>
<dd>
<div class="block">Build a region covering the whole space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/oned/LimitAngle.html#wholeSpace()">wholeSpace()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.oned.<a href="./org/apache/commons/math3/geometry/spherical/oned/LimitAngle.html" title="class in org.apache.commons.math3.geometry.spherical.oned">LimitAngle</a></dt>
<dd>
<div class="block">Build a region covering the whole space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html#wholeSpace()">wholeSpace()</a></span> - Method in class org.apache.commons.math3.geometry.spherical.twod.<a href="./org/apache/commons/math3/geometry/spherical/twod/Circle.html" title="class in org.apache.commons.math3.geometry.spherical.twod">Circle</a></dt>
<dd>
<div class="block">Build a region covering the whole space.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/WilcoxonSignedRankTest.html#wilcoxonSignedRank(double[], double[])">wilcoxonSignedRank(double[], double[])</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/WilcoxonSignedRankTest.html" title="class in org.apache.commons.math3.stat.inference">WilcoxonSignedRankTest</a></dt>
<dd>
<div class="block">Computes the <a
 href="http://en.wikipedia.org/wiki/Wilcoxon_signed-rank_test">
 Wilcoxon signed ranked statistic</a> comparing mean for two related
 samples or repeated measurements on a single sample.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/inference/WilcoxonSignedRankTest.html" title="class in org.apache.commons.math3.stat.inference"><span class="strong">WilcoxonSignedRankTest</span></a> - Class in <a href="./org/apache/commons/math3/stat/inference/package-summary.html">org.apache.commons.math3.stat.inference</a></dt>
<dd>
<div class="block">An implementation of the Wilcoxon signed-rank test.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/WilcoxonSignedRankTest.html#WilcoxonSignedRankTest()">WilcoxonSignedRankTest()</a></span> - Constructor for class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/WilcoxonSignedRankTest.html" title="class in org.apache.commons.math3.stat.inference">WilcoxonSignedRankTest</a></dt>
<dd>
<div class="block">Create a test instance where NaN's are left in place and ties get
 the average of applicable ranks.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/WilcoxonSignedRankTest.html#WilcoxonSignedRankTest(org.apache.commons.math3.stat.ranking.NaNStrategy, org.apache.commons.math3.stat.ranking.TiesStrategy)">WilcoxonSignedRankTest(NaNStrategy, TiesStrategy)</a></span> - Constructor for class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/WilcoxonSignedRankTest.html" title="class in org.apache.commons.math3.stat.inference">WilcoxonSignedRankTest</a></dt>
<dd>
<div class="block">Create a test instance using the given strategies for NaN's and ties.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/inference/WilcoxonSignedRankTest.html#wilcoxonSignedRankTest(double[], double[], boolean)">wilcoxonSignedRankTest(double[], double[], boolean)</a></span> - Method in class org.apache.commons.math3.stat.inference.<a href="./org/apache/commons/math3/stat/inference/WilcoxonSignedRankTest.html" title="class in org.apache.commons.math3.stat.inference">WilcoxonSignedRankTest</a></dt>
<dd>
<div class="block">Returns the <i>observed significance level</i>, or <a href=
 "http://www.cas.lancs.ac.uk/glossary_v1.1/hyptest.html#pvalue">
 p-value</a>, associated with a <a
 href="http://en.wikipedia.org/wiki/Wilcoxon_signed-rank_test">
 Wilcoxon signed ranked statistic</a> comparing mean for two related
 samples or repeated measurements on a single sample.</div>
</dd>
<dt><a href="./org/apache/commons/math3/stat/interval/WilsonScoreInterval.html" title="class in org.apache.commons.math3.stat.interval"><span class="strong">WilsonScoreInterval</span></a> - Class in <a href="./org/apache/commons/math3/stat/interval/package-summary.html">org.apache.commons.math3.stat.interval</a></dt>
<dd>
<div class="block">Implements the Wilson score method for creating a binomial proportion confidence interval.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/interval/WilsonScoreInterval.html#WilsonScoreInterval()">WilsonScoreInterval()</a></span> - Constructor for class org.apache.commons.math3.stat.interval.<a href="./org/apache/commons/math3/stat/interval/WilsonScoreInterval.html" title="class in org.apache.commons.math3.stat.interval">WilsonScoreInterval</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#windowSize">windowSize</a></span> - Variable in class org.apache.commons.math3.stat.descriptive.<a href="./org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></dt>
<dd>
<div class="block">hold the window size</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LevenbergMarquardtOptimizer.html#withCostRelativeTolerance(double)">withCostRelativeTolerance(double)</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LevenbergMarquardtOptimizer.html" title="class in org.apache.commons.math3.fitting.leastsquares">LevenbergMarquardtOptimizer</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/GaussNewtonOptimizer.html#withDecomposition(org.apache.commons.math3.fitting.leastsquares.GaussNewtonOptimizer.Decomposition)">withDecomposition(GaussNewtonOptimizer.Decomposition)</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/GaussNewtonOptimizer.html" title="class in org.apache.commons.math3.fitting.leastsquares">GaussNewtonOptimizer</a></dt>
<dd>
<div class="block">Configure the decomposition algorithm.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LevenbergMarquardtOptimizer.html#withInitialStepBoundFactor(double)">withInitialStepBoundFactor(double)</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LevenbergMarquardtOptimizer.html" title="class in org.apache.commons.math3.fitting.leastsquares">LevenbergMarquardtOptimizer</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/GaussianCurveFitter.html#withMaxIterations(int)">withMaxIterations(int)</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/GaussianCurveFitter.html" title="class in org.apache.commons.math3.fitting">GaussianCurveFitter</a></dt>
<dd>
<div class="block">Configure the maximum number of iterations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/HarmonicCurveFitter.html#withMaxIterations(int)">withMaxIterations(int)</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/HarmonicCurveFitter.html" title="class in org.apache.commons.math3.fitting">HarmonicCurveFitter</a></dt>
<dd>
<div class="block">Configure the maximum number of iterations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/PolynomialCurveFitter.html#withMaxIterations(int)">withMaxIterations(int)</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/PolynomialCurveFitter.html" title="class in org.apache.commons.math3.fitting">PolynomialCurveFitter</a></dt>
<dd>
<div class="block">Configure the maximum number of iterations.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LevenbergMarquardtOptimizer.html#withOrthoTolerance(double)">withOrthoTolerance(double)</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LevenbergMarquardtOptimizer.html" title="class in org.apache.commons.math3.fitting.leastsquares">LevenbergMarquardtOptimizer</a></dt>
<dd>
<div class="block">Modifies the given parameter.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LevenbergMarquardtOptimizer.html#withParameterRelativeTolerance(double)">withParameterRelativeTolerance(double)</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LevenbergMarquardtOptimizer.html" title="class in org.apache.commons.math3.fitting.leastsquares">LevenbergMarquardtOptimizer</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/leastsquares/LevenbergMarquardtOptimizer.html#withRankingThreshold(double)">withRankingThreshold(double)</a></span> - Method in class org.apache.commons.math3.fitting.leastsquares.<a href="./org/apache/commons/math3/fitting/leastsquares/LevenbergMarquardtOptimizer.html" title="class in org.apache.commons.math3.fitting.leastsquares">LevenbergMarquardtOptimizer</a></dt>
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/GaussianCurveFitter.html#withStartPoint(double[])">withStartPoint(double[])</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/GaussianCurveFitter.html" title="class in org.apache.commons.math3.fitting">GaussianCurveFitter</a></dt>
<dd>
<div class="block">Configure the start point (initial guess).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/HarmonicCurveFitter.html#withStartPoint(double[])">withStartPoint(double[])</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/HarmonicCurveFitter.html" title="class in org.apache.commons.math3.fitting">HarmonicCurveFitter</a></dt>
<dd>
<div class="block">Configure the start point (initial guess).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fitting/PolynomialCurveFitter.html#withStartPoint(double[])">withStartPoint(double[])</a></span> - Method in class org.apache.commons.math3.fitting.<a href="./org/apache/commons/math3/fitting/PolynomialCurveFitter.html" title="class in org.apache.commons.math3.fitting">PolynomialCurveFitter</a></dt>
<dd>
<div class="block">Configure the start point (initial guess).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#writeBaseExternal(java.io.ObjectOutput)">writeBaseExternal(ObjectOutput)</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dd>
<div class="block">Save the base state of the instance.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html#writeExternal(java.io.ObjectOutput)">writeExternal(ObjectOutput)</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/AbstractStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">AbstractStepInterpolator</a></dt>
<dt><span class="strong"><a href="./org/apache/commons/math3/ode/sampling/NordsieckStepInterpolator.html#writeExternal(java.io.ObjectOutput)">writeExternal(ObjectOutput)</a></span> - Method in class org.apache.commons.math3.ode.sampling.<a href="./org/apache/commons/math3/ode/sampling/NordsieckStepInterpolator.html" title="class in org.apache.commons.math3.ode.sampling">NordsieckStepInterpolator</a></dt>
</dl>
<a name="_X_">
<!--   -->
</a>
<h2 class="title">X</h2>
<dl>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/partitioning/RegionFactory.html#xor(org.apache.commons.math3.geometry.partitioning.Region, org.apache.commons.math3.geometry.partitioning.Region)">xor(Region&lt;S&gt;, Region&lt;S&gt;)</a></span> - Method in class org.apache.commons.math3.geometry.partitioning.<a href="./org/apache/commons/math3/geometry/partitioning/RegionFactory.html" title="class in org.apache.commons.math3.geometry.partitioning">RegionFactory</a></dt>
<dd>
<div class="block">Compute the symmetric difference (exclusive or) of two regions.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/RotationOrder.html#XYX">XYX</a></span> - Static variable in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/RotationOrder.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">RotationOrder</a></dt>
<dd>
<div class="block">Set of Euler angles.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/RotationOrder.html#XYZ">XYZ</a></span> - Static variable in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/RotationOrder.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">RotationOrder</a></dt>
<dd>
<div class="block">Set of Cardan angles.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/RotationOrder.html#XZX">XZX</a></span> - Static variable in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/RotationOrder.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">RotationOrder</a></dt>
<dd>
<div class="block">Set of Euler angles.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/RotationOrder.html#XZY">XZY</a></span> - Static variable in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/RotationOrder.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">RotationOrder</a></dt>
<dd>
<div class="block">Set of Cardan angles.</div>
</dd>
</dl>
<a name="_Y_">
<!--   -->
</a>
<h2 class="title">Y</h2>
<dl>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/RotationOrder.html#YXY">YXY</a></span> - Static variable in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/RotationOrder.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">RotationOrder</a></dt>
<dd>
<div class="block">Set of Euler angles.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/RotationOrder.html#YXZ">YXZ</a></span> - Static variable in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/RotationOrder.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">RotationOrder</a></dt>
<dd>
<div class="block">Set of Cardan angles.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/RotationOrder.html#YZX">YZX</a></span> - Static variable in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/RotationOrder.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">RotationOrder</a></dt>
<dd>
<div class="block">Set of Cardan angles.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/RotationOrder.html#YZY">YZY</a></span> - Static variable in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/RotationOrder.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">RotationOrder</a></dt>
<dd>
<div class="block">Set of Euler angles.</div>
</dd>
</dl>
<a name="_Z_">
<!--   -->
</a>
<h2 class="title">Z</h2>
<dl>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Complex.html#ZERO">ZERO</a></span> - Static variable in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Complex.html" title="class in org.apache.commons.math3.complex">Complex</a></dt>
<dd>
<div class="block">A complex number representing "0.0 + 0.0i"</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/complex/Quaternion.html#ZERO">ZERO</a></span> - Static variable in class org.apache.commons.math3.complex.<a href="./org/apache/commons/math3/complex/Quaternion.html" title="class in org.apache.commons.math3.complex">Quaternion</a></dt>
<dd>
<div class="block">Zero quaternion.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/BigFraction.html#ZERO">ZERO</a></span> - Static variable in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/BigFraction.html" title="class in org.apache.commons.math3.fraction">BigFraction</a></dt>
<dd>
<div class="block">A fraction representing "0".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/fraction/Fraction.html#ZERO">ZERO</a></span> - Static variable in class org.apache.commons.math3.fraction.<a href="./org/apache/commons/math3/fraction/Fraction.html" title="class in org.apache.commons.math3.fraction">Fraction</a></dt>
<dd>
<div class="block">A fraction representing "0".</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html#ZERO">ZERO</a></span> - Static variable in class org.apache.commons.math3.geometry.euclidean.oned.<a href="./org/apache/commons/math3/geometry/euclidean/oned/Vector1D.html" title="class in org.apache.commons.math3.geometry.euclidean.oned">Vector1D</a></dt>
<dd>
<div class="block">Origin (coordinates: 0).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html#ZERO">ZERO</a></span> - Static variable in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">Vector3D</a></dt>
<dd>
<div class="block">Null vector (coordinates: 0, 0, 0).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html#ZERO">ZERO</a></span> - Static variable in class org.apache.commons.math3.geometry.euclidean.twod.<a href="./org/apache/commons/math3/geometry/euclidean/twod/Vector2D.html" title="class in org.apache.commons.math3.geometry.euclidean.twod">Vector2D</a></dt>
<dd>
<div class="block">Origin (coordinates: 0, 0).</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/BigReal.html#ZERO">ZERO</a></span> - Static variable in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/BigReal.html" title="class in org.apache.commons.math3.util">BigReal</a></dt>
<dd>
<div class="block">A big real representing 0.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/util/Decimal64.html#ZERO">ZERO</a></span> - Static variable in class org.apache.commons.math3.util.<a href="./org/apache/commons/math3/util/Decimal64.html" title="class in org.apache.commons.math3.util">Decimal64</a></dt>
<dd>
<div class="block">The constant value of <code>0d</code> as a <code>Decimal64</code>.</div>
</dd>
<dt><a href="./org/apache/commons/math3/exception/ZeroException.html" title="class in org.apache.commons.math3.exception"><span class="strong">ZeroException</span></a> - Exception in <a href="./org/apache/commons/math3/exception/package-summary.html">org.apache.commons.math3.exception</a></dt>
<dd>
<div class="block">Exception to be thrown when zero is provided where it is not allowed.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/ZeroException.html#ZeroException()">ZeroException()</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/ZeroException.html" title="class in org.apache.commons.math3.exception">ZeroException</a></dt>
<dd>
<div class="block">Construct the exception.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/exception/ZeroException.html#ZeroException(org.apache.commons.math3.exception.util.Localizable, java.lang.Object...)">ZeroException(Localizable, Object...)</a></span> - Constructor for exception org.apache.commons.math3.exception.<a href="./org/apache/commons/math3/exception/ZeroException.html" title="class in org.apache.commons.math3.exception">ZeroException</a></dt>
<dd>
<div class="block">Construct the exception with a specific context.</div>
</dd>
<dt><a href="./org/apache/commons/math3/distribution/ZipfDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">ZipfDistribution</span></a> - Class in <a href="./org/apache/commons/math3/distribution/package-summary.html">org.apache.commons.math3.distribution</a></dt>
<dd>
<div class="block">Implementation of the Zipf distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ZipfDistribution.html#ZipfDistribution(int, double)">ZipfDistribution(int, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ZipfDistribution.html" title="class in org.apache.commons.math3.distribution">ZipfDistribution</a></dt>
<dd>
<div class="block">Create a new Zipf distribution with the given number of elements and
 exponent.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/distribution/ZipfDistribution.html#ZipfDistribution(org.apache.commons.math3.random.RandomGenerator, int, double)">ZipfDistribution(RandomGenerator, int, double)</a></span> - Constructor for class org.apache.commons.math3.distribution.<a href="./org/apache/commons/math3/distribution/ZipfDistribution.html" title="class in org.apache.commons.math3.distribution">ZipfDistribution</a></dt>
<dd>
<div class="block">Creates a Zipf distribution.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/RotationOrder.html#ZXY">ZXY</a></span> - Static variable in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/RotationOrder.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">RotationOrder</a></dt>
<dd>
<div class="block">Set of Cardan angles.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/RotationOrder.html#ZXZ">ZXZ</a></span> - Static variable in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/RotationOrder.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">RotationOrder</a></dt>
<dd>
<div class="block">Set of Euler angles.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/RotationOrder.html#ZYX">ZYX</a></span> - Static variable in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/RotationOrder.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">RotationOrder</a></dt>
<dd>
<div class="block">Set of Cardan angles.</div>
</dd>
<dt><span class="strong"><a href="./org/apache/commons/math3/geometry/euclidean/threed/RotationOrder.html#ZYZ">ZYZ</a></span> - Static variable in class org.apache.commons.math3.geometry.euclidean.threed.<a href="./org/apache/commons/math3/geometry/euclidean/threed/RotationOrder.html" title="class in org.apache.commons.math3.geometry.euclidean.threed">RotationOrder</a></dt>
<dd>
<div class="block">Set of Euler angles.</div>
</dd>
</dl>
<a href="#_A_">A</a>&nbsp;<a href="#_B_">B</a>&nbsp;<a href="#_C_">C</a>&nbsp;<a href="#_D_">D</a>&nbsp;<a href="#_E_">E</a>&nbsp;<a href="#_F_">F</a>&nbsp;<a href="#_G_">G</a>&nbsp;<a href="#_H_">H</a>&nbsp;<a href="#_I_">I</a>&nbsp;<a href="#_J_">J</a>&nbsp;<a href="#_K_">K</a>&nbsp;<a href="#_L_">L</a>&nbsp;<a href="#_M_">M</a>&nbsp;<a href="#_N_">N</a>&nbsp;<a href="#_O_">O</a>&nbsp;<a href="#_P_">P</a>&nbsp;<a href="#_Q_">Q</a>&nbsp;<a href="#_R_">R</a>&nbsp;<a href="#_S_">S</a>&nbsp;<a href="#_T_">T</a>&nbsp;<a href="#_U_">U</a>&nbsp;<a href="#_V_">V</a>&nbsp;<a href="#_W_">W</a>&nbsp;<a href="#_X_">X</a>&nbsp;<a href="#_Y_">Y</a>&nbsp;<a href="#_Z_">Z</a>&nbsp;</div>
<!-- ======= 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>Package</li>
<li>Class</li>
<li>Use</li>
<li><a href="./overview-tree.html">Tree</a></li>
<li><a href="./deprecated-list.html">Deprecated</a></li>
<li class="navBarCell1Rev">Index</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>Prev</li>
<li>Next</li>
</ul>
<ul class="navList">
<li><a href="./index.html?index-all.html" target="_top">Frames</a></li>
<li><a href="index-all.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>
<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>
