From 93d37df3b381e6199a04b4aa3af26c8ae0430543 Mon Sep 17 00:00:00 2001 From: Luc Maisonobe Date: Sat, 18 Aug 2012 18:08:57 +0000 Subject: [PATCH] renamed UnivariateDifferential into UnivariateDifferentiable git-svn-id: https://svn.apache.org/repos/asf/commons/proper/math/trunk@1374628 13f79535-47bb-0310-9956-ffa450edef68 --- ...ial.java => UnivariateDifferentiable.java} | 27 +++---------------- .../UnivariateDifferentiator.java | 2 +- .../differentiation/package-info.java | 4 +-- 3 files changed, 6 insertions(+), 27 deletions(-) rename src/main/java/org/apache/commons/math3/analysis/differentiation/{UnivariateDifferential.java => UnivariateDifferentiable.java} (52%) diff --git a/src/main/java/org/apache/commons/math3/analysis/differentiation/UnivariateDifferential.java b/src/main/java/org/apache/commons/math3/analysis/differentiation/UnivariateDifferentiable.java similarity index 52% rename from src/main/java/org/apache/commons/math3/analysis/differentiation/UnivariateDifferential.java rename to src/main/java/org/apache/commons/math3/analysis/differentiation/UnivariateDifferentiable.java index 1a2d53457..157eb6127 100644 --- a/src/main/java/org/apache/commons/math3/analysis/differentiation/UnivariateDifferential.java +++ b/src/main/java/org/apache/commons/math3/analysis/differentiation/UnivariateDifferentiable.java @@ -27,35 +27,14 @@ import org.apache.commons.math3.analysis.UnivariateFunction; * @since 3.1 * @version $Id$ */ -public interface UnivariateDifferential { - - /** Get the primitive function associated with this differential. - *

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.

- *

In other words in the following code snippet, the three values - * f1, f2 and f3 should be equal (at least at machine tolerance level)

- *
-     *    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();
-     * 
- * @return primitive function bound to this derivative - */ - UnivariateFunction getPrimitive(); +public interface UnivariateDifferentiable extends UnivariateFunction { /** Simple mathematical function. - *

{@link UnivariateDifferential} classes compute both the + *

{@link UnivariateDifferentiable} classes compute both the * value and the first derivative of the function.

* @param t function input value * @return function result */ - DerivativeStructure f(DerivativeStructure t); + DerivativeStructure value(DerivativeStructure t); } diff --git a/src/main/java/org/apache/commons/math3/analysis/differentiation/UnivariateDifferentiator.java b/src/main/java/org/apache/commons/math3/analysis/differentiation/UnivariateDifferentiator.java index 497b1d91a..43a80f62e 100644 --- a/src/main/java/org/apache/commons/math3/analysis/differentiation/UnivariateDifferentiator.java +++ b/src/main/java/org/apache/commons/math3/analysis/differentiation/UnivariateDifferentiator.java @@ -29,6 +29,6 @@ public interface UnivariateDifferentiator { * @param function function to differentiate * @return differential function */ - UnivariateDifferential differentiate(UnivariateFunction function); + UnivariateDifferentiable differentiate(UnivariateFunction function); } diff --git a/src/main/java/org/apache/commons/math3/analysis/differentiation/package-info.java b/src/main/java/org/apache/commons/math3/analysis/differentiation/package-info.java index 472ec3643..1a491b934 100644 --- a/src/main/java/org/apache/commons/math3/analysis/differentiation/package-info.java +++ b/src/main/java/org/apache/commons/math3/analysis/differentiation/package-info.java @@ -22,11 +22,11 @@ * The core class is {@link DerivativeStructure} which holds the value and * the differentials of a function. This class handles some arbitrary number * 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. *

*

- * 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 * univariate function} and get a {@link differential function}. *