java.lang.Object
org.bzdev.math.rv.RandomVariable<Long>
org.bzdev.math.rv.LongRandomVariable
org.bzdev.math.rv.DetermLongRV
- All Implemented Interfaces:
Cloneable
,RandomVariableOps<Long>
Random variable that generates a deterministic sequence of long values.
-
Constructor Summary
ConstructorsConstructorDescriptionDetermLongRV
(long[] values) Constructor for a repeating sequence.DetermLongRV
(long[] values, long finalValue) Constructor.DetermLongRV
(long value, long finalValue) Constructor given a starting value and a final value. -
Method Summary
Modifier and TypeMethodDescriptionprotected int
Spliterator characteristics.long
Get the final valuelong[]
Get the values.boolean
Determine if the sequence is a repeating one.next()
Get the next value for a random variable.void
setMaximum
(Long max, boolean closed) Set the maximum value for a random variable.void
setMinimum
(Long min, boolean closed) Set the minimum value for a random variable.toString()
Methods inherited from class org.bzdev.math.rv.LongRandomVariable
getMaximum, getMaximumClosed, getMinimum, getMinimumClosed, parallelStream, parallelStream, rangeTestFailed, rangeTestNeeded, setRequiredMaximum, setRequiredMinimum, spliterator, spliterator, stream, stream, tightenMaximum, tightenMaximumS, tightenMinimum, tightenMinimumS
Methods inherited from class org.bzdev.math.rv.RandomVariable
clone
-
Constructor Details
-
DetermLongRV
public DetermLongRV(long[] values, long finalValue) Constructor. When next is called, after the values in the first argument are returned in order, the final value is returned persistently from then on.- Parameters:
values
- the values of the random variable in the order in which these are returnedfinalValue
- the final value of the random variable
-
DetermLongRV
public DetermLongRV(long[] values) Constructor for a repeating sequence.- Parameters:
values
- the values of the random variable in the order in which these are returned
-
DetermLongRV
public DetermLongRV(long value, long finalValue) Constructor given a starting value and a final value.- Parameters:
value
- the starting value of the random variablefinalValue
- the subsequent value of the random variable
-
-
Method Details
-
getValues
public long[] getValues()Get the values.- Returns:
- an array of the values, excluding the final value
-
getFinalValue
public long getFinalValue()Get the final value- Returns:
- the final value; undefined if the sequence repeats forever
-
isRepeating
public boolean isRepeating()Determine if the sequence is a repeating one.- Returns:
- true if repeating, false otherwise.
-
setMinimum
public void setMinimum(Long min, boolean closed) throws UnsupportedOperationException, IllegalArgumentException Description copied from class:RandomVariable
Set the minimum value for a random variable.- Specified by:
setMinimum
in interfaceRandomVariableOps<Long>
- Overrides:
setMinimum
in classLongRandomVariable
- Parameters:
min
- minimum value.closed
- true if the minimum value is part of the range; false if it is a lower bound on the range- Throws:
UnsupportedOperationException
- the random variable's type does not have an order imposed on it or the operation is not supported for implementation reasonsIllegalArgumentException
- an argument is out of range
-
setMaximum
public void setMaximum(Long max, boolean closed) throws UnsupportedOperationException, IllegalArgumentException Description copied from class:RandomVariable
Set the maximum value for a random variable.- Specified by:
setMaximum
in interfaceRandomVariableOps<Long>
- Overrides:
setMaximum
in classLongRandomVariable
- Parameters:
max
- maximum value.closed
- true if the minimum value is part of the range; false if it is a lower bound on the range- Throws:
UnsupportedOperationException
- the random variable's type does not have an order imposed on it or the operation is not supported for implementation reasonsIllegalArgumentException
- an argument is out of range
-
next
Description copied from class:RandomVariable
Get the next value for a random variable. In general, each value will be independent of the last.- Specified by:
next
in interfaceRandomVariableOps<Long>
- Specified by:
next
in classRandomVariable<Long>
- Returns:
- the next value
-
toString
-
getCharacteristics
protected int getCharacteristics()Description copied from class:RandomVariable
Spliterator characteristics. The characteristics returned should not includeSpliterator.SIZED
orSpliterator.SUBSIZED
. The default value isSpliterator.IMMUTABLE
|Spliterator.NONNULL
. If the characteristics includeSpliterator.ORDERED
,Spliterator.trySplit()
will return null. The characteristics includeSpliterator.ORDERED
for the random variables in this package that return a deterministic sequence of values.- Overrides:
getCharacteristics
in classRandomVariable<Long>
- Returns:
- the characteristics
-