renamed UnivariateDifferential into UnivariateDifferentiable
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1374628 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
f175f37038
commit
93d37df3b3
|
@ -27,35 +27,14 @@ import org.apache.commons.math3.analysis.UnivariateFunction;
|
||||||
* @since 3.1
|
* @since 3.1
|
||||||
* @version $Id$
|
* @version $Id$
|
||||||
*/
|
*/
|
||||||
public interface UnivariateDifferential {
|
public interface UnivariateDifferentiable extends UnivariateFunction {
|
||||||
|
|
||||||
/** Get the primitive function associated with this differential.
|
|
||||||
* <p>Each {@link UnivariateDifferential} instance is tightly bound
|
|
||||||
* to an {@link UnivariateDifferentiable} instance. If the state of
|
|
||||||
* the primitive instance changes in any way that affects the
|
|
||||||
* differential computation, this binding allows this change to
|
|
||||||
* be immediately seen by the derivative instance, there is no need
|
|
||||||
* to differentiate the primitive again. The existing instance is aware
|
|
||||||
* of the primitive changes.</p>
|
|
||||||
* <p>In other words in the following code snippet, the three values
|
|
||||||
* f1, f2 and f3 should be equal (at least at machine tolerance level)</p>
|
|
||||||
* <pre>
|
|
||||||
* UnivariateDifferential derivative = differentiator.differentiate(derivable);
|
|
||||||
* derivable.someFunctionThatMutatesHeavilyTheInstance();
|
|
||||||
* double f1 = derivable.f(t);
|
|
||||||
* double f2 = derivative.getPrimitive().f(t);
|
|
||||||
* double f3 = derivative.f(new DerivativeStructure(variables, order, index, t)).getValue();
|
|
||||||
* </pre>
|
|
||||||
* @return primitive function bound to this derivative
|
|
||||||
*/
|
|
||||||
UnivariateFunction getPrimitive();
|
|
||||||
|
|
||||||
/** Simple mathematical function.
|
/** Simple mathematical function.
|
||||||
* <p>{@link UnivariateDifferential} classes compute both the
|
* <p>{@link UnivariateDifferentiable} classes compute both the
|
||||||
* value and the first derivative of the function.</p>
|
* value and the first derivative of the function.</p>
|
||||||
* @param t function input value
|
* @param t function input value
|
||||||
* @return function result
|
* @return function result
|
||||||
*/
|
*/
|
||||||
DerivativeStructure f(DerivativeStructure t);
|
DerivativeStructure value(DerivativeStructure t);
|
||||||
|
|
||||||
}
|
}
|
|
@ -29,6 +29,6 @@ public interface UnivariateDifferentiator {
|
||||||
* @param function function to differentiate
|
* @param function function to differentiate
|
||||||
* @return differential function
|
* @return differential function
|
||||||
*/
|
*/
|
||||||
UnivariateDifferential differentiate(UnivariateFunction function);
|
UnivariateDifferentiable differentiate(UnivariateFunction function);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -22,11 +22,11 @@
|
||||||
* The core class is {@link DerivativeStructure} which holds the value and
|
* The core class is {@link DerivativeStructure} which holds the value and
|
||||||
* the differentials of a function. This class handles some arbitrary number
|
* the differentials of a function. This class handles some arbitrary number
|
||||||
* of free parameters and arbitrary derivation order. It is used both as
|
* of free parameters and arbitrary derivation order. It is used both as
|
||||||
* the input and the output type for the {@link UnivariateDifferential}
|
* the input and the output type for the {@link UnivariateDifferentiable}
|
||||||
* interface. Any differentiable function should implement this interface.
|
* interface. Any differentiable function should implement this interface.
|
||||||
* </p>
|
* </p>
|
||||||
* <p>
|
* <p>
|
||||||
* The {@link UnivariateDifferentiator} interface defines a way to differentation
|
* The {@link UnivariateDifferentiator} interface defines a way to differentiation
|
||||||
* a simple {@link org.apache.commons.math3.analysis.UnivariateFunction
|
* a simple {@link org.apache.commons.math3.analysis.UnivariateFunction
|
||||||
* univariate function} and get a {@link differential function}.
|
* univariate function} and get a {@link differential function}.
|
||||||
* </p>
|
* </p>
|
||||||
|
|
Loading…
Reference in New Issue