Power-class {CVXR} | R Documentation |
The Power class.
Description
This class represents the elementwise power function f(x) = x^p
.
If expr
is a CVXR expression, then expr^p
is equivalent to Power(expr, p)
.
Usage
Power(x, p, max_denom = 1024)
## S4 method for signature 'Power'
to_numeric(object, values)
## S4 method for signature 'Power'
sign_from_args(object)
## S4 method for signature 'Power'
is_atom_convex(object)
## S4 method for signature 'Power'
is_atom_concave(object)
## S4 method for signature 'Power'
is_atom_log_log_convex(object)
## S4 method for signature 'Power'
is_atom_log_log_concave(object)
## S4 method for signature 'Power'
is_constant(object)
## S4 method for signature 'Power'
is_incr(object, idx)
## S4 method for signature 'Power'
is_decr(object, idx)
## S4 method for signature 'Power'
is_quadratic(object)
## S4 method for signature 'Power'
is_qpwa(object)
## S4 method for signature 'Power'
.grad(object, values)
## S4 method for signature 'Power'
.domain(object)
## S4 method for signature 'Power'
get_data(object)
## S4 method for signature 'Power'
copy(object, args = NULL, id_objects = list())
## S4 method for signature 'Power'
name(x)
Arguments
x |
The Expression to be raised to a power. |
p |
A numeric value indicating the scalar power. |
max_denom |
The maximum denominator considered in forming a rational approximation of |
object |
A Power object. |
values |
A list of numeric values for the arguments |
idx |
An index into the atom. |
args |
A list of arguments to reconstruct the atom. If args=NULL, use the current args of the atom |
id_objects |
Currently unused. |
Details
For p = 0
, f(x) = 1
, constant, positive.
For p = 1
, f(x) = x
, affine, increasing, same sign as x
.
For p = 2,4,8,...
, f(x) = |x|^p
, convex, signed monotonicity, positive.
For p < 0
and f(x) =
x^p
for
x > 0
+\infty
x \leq 0
, this function is convex, decreasing, and positive.
For 0 < p < 1
and f(x) =
x^p
for
x \geq 0
-\infty
x < 0
, this function is concave, increasing, and positive.
For p > 1, p \neq 2,4,8,\ldots
and f(x) =
x^p
for
x \geq 0
+\infty
x < 0
, this function is convex, increasing, and positive.
Methods (by generic)
-
to_numeric(Power)
: Throw an error if the power is negative and cannot be handled. -
sign_from_args(Power)
: The sign of the atom. -
is_atom_convex(Power)
: Isp \leq 0
orp \geq 1
? -
is_atom_concave(Power)
: Isp \geq 0
orp \leq 1
? -
is_atom_log_log_convex(Power)
: Is the atom log-log convex? -
is_atom_log_log_concave(Power)
: Is the atom log-log concave? -
is_constant(Power)
: A logical value indicating whether the atom is constant. -
is_incr(Power)
: A logical value indicating whether the atom is weakly increasing. -
is_decr(Power)
: A logical value indicating whether the atom is weakly decreasing. -
is_quadratic(Power)
: A logical value indicating whether the atom is quadratic. -
is_qpwa(Power)
: A logical value indicating whether the atom is quadratic of piecewise affine. -
.grad(Power)
: Gives the (sub/super)gradient of the atom w.r.t. each variable -
.domain(Power)
: Returns constraints describng the domain of the node -
get_data(Power)
: A list containing the output ofpow_low, pow_mid
, orpow_high
depending on the input power. -
copy(Power)
: Returns a shallow copy of the power atom -
name(Power)
: Returns the expression in string form.
Slots
x
The Expression to be raised to a power.
p
A numeric value indicating the scalar power.
max_denom
The maximum denominator considered in forming a rational approximation of
p
.