org.ojalgo.function.implementation
Class BigFunction

java.lang.Object
  extended by org.ojalgo.function.implementation.FunctionSet<BigDecimal>
      extended by org.ojalgo.function.implementation.BigFunction

public final class BigFunction
extends FunctionSet<BigDecimal>

Only the reference type parameter (BigDecimal) methods are actually implemented. The methods with the primitive parameters (double) should create a BigDecimal and then delegate to the primitive methods (and do nothing else). If possible the implementations should be pure BigDecimal arithmatic without rounding. If rounding is necessary MathContext.DECIMAL128 should be used. If BigDecimal arithmatic is not possible at all the implementation should delegate to PrimitiveFunction.

Author:
apete

Field Summary
static UnaryFunction<BigDecimal> ABS
           
static UnaryFunction<BigDecimal> ACOS
           
static UnaryFunction<BigDecimal> ACOSH
           
static BinaryFunction<BigDecimal> ADD
           
static UnaryFunction<BigDecimal> ASIN
           
static UnaryFunction<BigDecimal> ASINH
           
static UnaryFunction<BigDecimal> ATAN
           
static UnaryFunction<BigDecimal> ATANH
           
static UnaryFunction<BigDecimal> CARDINALITY
           
static UnaryFunction<BigDecimal> CONJUGATE
           
static UnaryFunction<BigDecimal> COS
           
static UnaryFunction<BigDecimal> COSH
           
static BinaryFunction<BigDecimal> DIVIDE
           
static UnaryFunction<BigDecimal> EXP
           
static UnaryFunction<BigDecimal> EXPM1
           
static BinaryFunction<BigDecimal> HYPOT
           
static UnaryFunction<BigDecimal> INVERT
           
static UnaryFunction<BigDecimal> LOG
           
static UnaryFunction<BigDecimal> LOG10
           
static UnaryFunction<BigDecimal> LOG1P
           
static BinaryFunction<BigDecimal> MAX
           
static BinaryFunction<BigDecimal> MIN
           
static BinaryFunction<BigDecimal> MULTIPLY
           
static UnaryFunction<BigDecimal> NEGATE
           
static BinaryFunction<BigDecimal> POW
           
static ParameterFunction<BigDecimal> POWER
           
static ParameterFunction<BigDecimal> ROOT
           
static ParameterFunction<BigDecimal> SCALE
           
static UnaryFunction<BigDecimal> SIGNUM
           
static UnaryFunction<BigDecimal> SIN
           
static UnaryFunction<BigDecimal> SINH
           
static UnaryFunction<BigDecimal> SQRT
           
static UnaryFunction<BigDecimal> SQRT1PX2
           
static BinaryFunction<BigDecimal> SUBTRACT
           
static UnaryFunction<BigDecimal> TAN
           
static UnaryFunction<BigDecimal> TANH
           
static UnaryFunction<BigDecimal> VALUE
           
 
Method Summary
 UnaryFunction<BigDecimal> abs()
           
 UnaryFunction<BigDecimal> acos()
           
 UnaryFunction<BigDecimal> acosh()
           
 BinaryFunction<BigDecimal> add()
          +
 UnaryFunction<BigDecimal> asin()
           
 UnaryFunction<BigDecimal> asinh()
           
 UnaryFunction<BigDecimal> atan()
           
 UnaryFunction<BigDecimal> atanh()
           
 UnaryFunction<BigDecimal> cardinality()
           
 UnaryFunction<BigDecimal> conjugate()
           
 UnaryFunction<BigDecimal> cos()
           
 UnaryFunction<BigDecimal> cosh()
           
 BinaryFunction<BigDecimal> divide()
          /
 UnaryFunction<BigDecimal> exp()
           
static BigFunction getSet()
           
 BinaryFunction<BigDecimal> hypot()
           
 UnaryFunction<BigDecimal> invert()
           
 UnaryFunction<BigDecimal> log()
           
 BinaryFunction<BigDecimal> max()
           
 BinaryFunction<BigDecimal> min()
           
 BinaryFunction<BigDecimal> multiply()
          *
 UnaryFunction<BigDecimal> negate()
           
 BinaryFunction<BigDecimal> pow()
           
 ParameterFunction<BigDecimal> power()
           
 ParameterFunction<BigDecimal> root()
           
 ParameterFunction<BigDecimal> scale()
           
 UnaryFunction<BigDecimal> signum()
           
 UnaryFunction<BigDecimal> sin()
           
 UnaryFunction<BigDecimal> sinh()
           
 UnaryFunction<BigDecimal> sqrt()
           
 UnaryFunction<BigDecimal> sqrt1px2()
           
 BinaryFunction<BigDecimal> subtract()
          -
 UnaryFunction<BigDecimal> tan()
           
 UnaryFunction<BigDecimal> tanh()
           
 UnaryFunction<BigDecimal> value()
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ABS

public static final UnaryFunction<BigDecimal> ABS

ACOS

public static final UnaryFunction<BigDecimal> ACOS

ACOSH

public static final UnaryFunction<BigDecimal> ACOSH

ADD

public static final BinaryFunction<BigDecimal> ADD

ASIN

public static final UnaryFunction<BigDecimal> ASIN

ASINH

public static final UnaryFunction<BigDecimal> ASINH

ATAN

public static final UnaryFunction<BigDecimal> ATAN

ATANH

public static final UnaryFunction<BigDecimal> ATANH

CARDINALITY

public static final UnaryFunction<BigDecimal> CARDINALITY

CONJUGATE

public static final UnaryFunction<BigDecimal> CONJUGATE

COS

public static final UnaryFunction<BigDecimal> COS

COSH

public static final UnaryFunction<BigDecimal> COSH

DIVIDE

public static final BinaryFunction<BigDecimal> DIVIDE

EXP

public static final UnaryFunction<BigDecimal> EXP

EXPM1

public static final UnaryFunction<BigDecimal> EXPM1

HYPOT

public static final BinaryFunction<BigDecimal> HYPOT

INVERT

public static final UnaryFunction<BigDecimal> INVERT

SQRT1PX2

public static final UnaryFunction<BigDecimal> SQRT1PX2

LOG

public static final UnaryFunction<BigDecimal> LOG

LOG10

public static final UnaryFunction<BigDecimal> LOG10

LOG1P

public static final UnaryFunction<BigDecimal> LOG1P

MAX

public static final BinaryFunction<BigDecimal> MAX

MIN

public static final BinaryFunction<BigDecimal> MIN

MULTIPLY

public static final BinaryFunction<BigDecimal> MULTIPLY

NEGATE

public static final UnaryFunction<BigDecimal> NEGATE

POW

public static final BinaryFunction<BigDecimal> POW

POWER

public static final ParameterFunction<BigDecimal> POWER

ROOT

public static final ParameterFunction<BigDecimal> ROOT

SCALE

public static final ParameterFunction<BigDecimal> SCALE

SIGNUM

public static final UnaryFunction<BigDecimal> SIGNUM

SIN

public static final UnaryFunction<BigDecimal> SIN

SINH

public static final UnaryFunction<BigDecimal> SINH

SQRT

public static final UnaryFunction<BigDecimal> SQRT

SUBTRACT

public static final BinaryFunction<BigDecimal> SUBTRACT

TAN

public static final UnaryFunction<BigDecimal> TAN

TANH

public static final UnaryFunction<BigDecimal> TANH

VALUE

public static final UnaryFunction<BigDecimal> VALUE
Method Detail

getSet

public static BigFunction getSet()

abs

public UnaryFunction<BigDecimal> abs()
Specified by:
abs in class FunctionSet<BigDecimal>
See Also:
StrictMath.abs(double)

acos

public UnaryFunction<BigDecimal> acos()
Specified by:
acos in class FunctionSet<BigDecimal>
See Also:
StrictMath.acos(double)

acosh

public UnaryFunction<BigDecimal> acosh()
Specified by:
acosh in class FunctionSet<BigDecimal>

add

public BinaryFunction<BigDecimal> add()
Description copied from class: FunctionSet
+

Specified by:
add in class FunctionSet<BigDecimal>

asin

public UnaryFunction<BigDecimal> asin()
Specified by:
asin in class FunctionSet<BigDecimal>
See Also:
StrictMath.asin(double)

asinh

public UnaryFunction<BigDecimal> asinh()
Specified by:
asinh in class FunctionSet<BigDecimal>

atan

public UnaryFunction<BigDecimal> atan()
Specified by:
atan in class FunctionSet<BigDecimal>
See Also:
StrictMath.atan(double)

atanh

public UnaryFunction<BigDecimal> atanh()
Specified by:
atanh in class FunctionSet<BigDecimal>

cardinality

public UnaryFunction<BigDecimal> cardinality()
Specified by:
cardinality in class FunctionSet<BigDecimal>

conjugate

public UnaryFunction<BigDecimal> conjugate()
Specified by:
conjugate in class FunctionSet<BigDecimal>

cos

public UnaryFunction<BigDecimal> cos()
Specified by:
cos in class FunctionSet<BigDecimal>
See Also:
StrictMath.cos(double)

cosh

public UnaryFunction<BigDecimal> cosh()
Specified by:
cosh in class FunctionSet<BigDecimal>
See Also:
StrictMath.cosh(double)

divide

public BinaryFunction<BigDecimal> divide()
Description copied from class: FunctionSet
/

Specified by:
divide in class FunctionSet<BigDecimal>

exp

public UnaryFunction<BigDecimal> exp()
Specified by:
exp in class FunctionSet<BigDecimal>
See Also:
StrictMath.exp(double)

hypot

public BinaryFunction<BigDecimal> hypot()
Specified by:
hypot in class FunctionSet<BigDecimal>
See Also:
StrictMath.hypot(double, double)

invert

public UnaryFunction<BigDecimal> invert()
Specified by:
invert in class FunctionSet<BigDecimal>

log

public UnaryFunction<BigDecimal> log()
Specified by:
log in class FunctionSet<BigDecimal>
See Also:
StrictMath.log(double)

max

public BinaryFunction<BigDecimal> max()
Specified by:
max in class FunctionSet<BigDecimal>
See Also:
StrictMath.max(double, double)

min

public BinaryFunction<BigDecimal> min()
Specified by:
min in class FunctionSet<BigDecimal>
See Also:
StrictMath.min(double, double)

multiply

public BinaryFunction<BigDecimal> multiply()
Description copied from class: FunctionSet
*

Specified by:
multiply in class FunctionSet<BigDecimal>

negate

public UnaryFunction<BigDecimal> negate()
Specified by:
negate in class FunctionSet<BigDecimal>

pow

public BinaryFunction<BigDecimal> pow()
Specified by:
pow in class FunctionSet<BigDecimal>
See Also:
StrictMath.pow(double, double)

power

public ParameterFunction<BigDecimal> power()
Specified by:
power in class FunctionSet<BigDecimal>

root

public ParameterFunction<BigDecimal> root()
Specified by:
root in class FunctionSet<BigDecimal>

scale

public ParameterFunction<BigDecimal> scale()
Specified by:
scale in class FunctionSet<BigDecimal>

signum

public UnaryFunction<BigDecimal> signum()
Specified by:
signum in class FunctionSet<BigDecimal>
See Also:
StrictMath.signum(double)

sin

public UnaryFunction<BigDecimal> sin()
Specified by:
sin in class FunctionSet<BigDecimal>
See Also:
StrictMath.sin(double)

sinh

public UnaryFunction<BigDecimal> sinh()
Specified by:
sinh in class FunctionSet<BigDecimal>
See Also:
StrictMath.sinh(double)

sqrt

public UnaryFunction<BigDecimal> sqrt()
Specified by:
sqrt in class FunctionSet<BigDecimal>
See Also:
StrictMath.sqrt(double)

sqrt1px2

public UnaryFunction<BigDecimal> sqrt1px2()
Specified by:
sqrt1px2 in class FunctionSet<BigDecimal>
Returns:
sqrt(1.0 + x2)

subtract

public BinaryFunction<BigDecimal> subtract()
Description copied from class: FunctionSet
-

Specified by:
subtract in class FunctionSet<BigDecimal>

tan

public UnaryFunction<BigDecimal> tan()
Specified by:
tan in class FunctionSet<BigDecimal>
See Also:
StrictMath.tan(double)

tanh

public UnaryFunction<BigDecimal> tanh()
Specified by:
tanh in class FunctionSet<BigDecimal>
See Also:
StrictMath.tanh(double)

value

public UnaryFunction<BigDecimal> value()
Specified by:
value in class FunctionSet<BigDecimal>