Class LogFactorial
- java.lang.Object
-
- org.apache.commons.numbers.combinatorics.LogFactorial
-
public final class LogFactorial extends Object
Class for computing the natural logarithm of the factorial of a number. It allows to allocate a cache of precomputed values. In case of cache miss, computation is performed by a call toLogGamma.value(double).
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static LogFactorialcreate()Creates an instance with no precomputed values.doublevalue(int n)Computes \( log_e(n!)LogFactorialwithCache(int cacheSize)Creates an instance with the specified cache size.
-
-
-
Method Detail
-
create
public static LogFactorial create()
Creates an instance with no precomputed values.- Returns:
- instance with no precomputed values
-
withCache
public LogFactorial withCache(int cacheSize)
Creates an instance with the specified cache size.- Parameters:
cacheSize- Number of precomputed values of the function.- Returns:
- a new instance where
cacheSizevalues have been precomputed. - Throws:
IllegalArgumentException- ifcacheSize < 0.
-
value
public double value(int n)
Computes \( log_e(n!) \).- Parameters:
n- Argument.- Returns:
log(n!).- Throws:
IllegalArgumentException- ifn < 0.
-
-