sascha@357: package de.intevation.gnv.math; sascha@357: sascha@357: import org.apache.commons.math.optimization.fitting.ParametricRealFunction; sascha@357: sascha@357: import org.apache.commons.math.FunctionEvaluationException; sascha@357: sascha@357: /** sascha@357: * @author Sascha L. Teichmann sascha@357: */ sascha@357: public class LinearFunction sascha@357: implements ParametricRealFunction sascha@357: { sascha@357: public static final LinearFunction INSTANCE = new LinearFunction(); sascha@357: sascha@357: public LinearFunction() { sascha@357: } sascha@357: sascha@357: public double value(double x, double [] parameters) sascha@357: throws FunctionEvaluationException sascha@357: { sascha@357: return x*parameters[0] + parameters[1]; sascha@357: } sascha@357: sascha@357: public double [] gradient(double x, double [] parameters) sascha@357: throws FunctionEvaluationException sascha@357: { sascha@357: return new double [] { x, 1f }; sascha@357: } sascha@357: } sascha@357: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8: