| isFeasible {ParamHelpers} | R Documentation |
Check if parameter value is valid.
Description
Check if a parameter value satisfies the constraints of the
parameter description. This includes the requires expressions and the
forbidden expression, if par is a ParamSet(). If requires is not
satisfied, the parameter value must be set to scalar NA to be still
feasible, a single scalar even in a case of a vector parameter. If the result
is FALSE the attribute "warning" is attached which gives the reason for
the negative result.
If the parameter has cnames, these are also checked.
Usage
isFeasible(par, x, use.defaults = FALSE, filter = FALSE)
Arguments
par |
|
x |
(any) |
use.defaults |
( |
filter |
( |
Value
logical(1).
Examples
p = makeNumericParam("x", lower = -1, upper = 1)
isFeasible(p, 0) # True
isFeasible(p, 2) # False, out of bounds
isFeasible(p, "a") # False, wrong type
# now for parameter sets
ps = makeParamSet(
makeNumericParam("x", lower = -1, upper = 1),
makeDiscreteParam("y", values = c("a", "b"))
)
isFeasible(ps, list(0, "a")) # True
isFeasible(ps, list("a", 0)) # False, wrong order