gov.sandia.cognition.math.ScalarFunction Maven / Gradle / Ivy
/*
* File: ScalarFunction.java
* Authors: Justin Basilico
* Project: Cognitive Foundry Common Core
*
* Copyright 2011 Cognitive Foundry. All rights reserved.
*/
package gov.sandia.cognition.math;
import gov.sandia.cognition.evaluator.Evaluator;
/**
* Interface for a function that maps some input onto a double.
*
* @param
* The type of the input to the scalar function.
* @author Justin Basilico
* @since 3.3.3
*/
public interface ScalarFunction
extends Evaluator
{
/**
* Evaluates the scalar function as a double.
*
* @param input
* The input value.
* @return
* The scalar output calculated from the given input.
*/
public double evaluateAsDouble(
final InputType input);
/**
* Returns the result of calling {@code evaluateAsDouble}.
*
* @param input
* The input value.
* @return
* The result evaluated as a double.
*/
@Override
default Double evaluate(
final InputType input)
{
return this.evaluateAsDouble(input);
}
}