This virtual class represents atomic expressions in CVXR.
class
## S4 method for signature 'Atom'name(x)## S4 method for signature 'Atom'validate_args(object)## S4 method for signature 'Atom'dim(x)## S4 method for signature 'Atom'nrow(x)## S4 method for signature 'Atom'ncol(x)## S4 method for signature 'Atom'allow_complex(object)## S4 method for signature 'Atom'is_nonneg(object)## S4 method for signature 'Atom'is_nonpos(object)## S4 method for signature 'Atom'is_imag(object)## S4 method for signature 'Atom'is_complex(object)## S4 method for signature 'Atom'is_convex(object)## S4 method for signature 'Atom'is_concave(object)## S4 method for signature 'Atom'is_log_log_convex(object)## S4 method for signature 'Atom'is_log_log_concave(object)## S4 method for signature 'Atom'canonicalize(object)## S4 method for signature 'Atom'graph_implementation(object, arg_objs, dim, data =NA_real_)## S4 method for signature 'Atom'value_impl(object)## S4 method for signature 'Atom'value(object)## S4 method for signature 'Atom'grad(object)## S4 method for signature 'Atom'domain(object)## S4 method for signature 'Atom'atoms(object)
Arguments
x, object: An Atom object.
arg_objs: A list of linear expressions for each argument.
dim: A vector with two elements representing the dimensions of the resulting expression.
data: A list of additional data required by the atom.
Methods (by generic)
name(Atom): Returns the string representtation of the function call
validate_args(Atom): Raises an error if the arguments are invalid.
dim(Atom): The c(row, col) dimensions of the atom.
nrow(Atom): The number of rows in the atom.
ncol(Atom): The number of columns in the atom.
allow_complex(Atom): Does the atom handle complex numbers?
is_nonneg(Atom): A logical value indicating whether the atom is nonnegative.
is_nonpos(Atom): A logical value indicating whether the atom is nonpositive.
is_imag(Atom): A logical value indicating whether the atom is imaginary.
is_complex(Atom): A logical value indicating whether the atom is complex valued.
is_convex(Atom): A logical value indicating whether the atom is convex.
is_concave(Atom): A logical value indicating whether the atom is concave.
is_log_log_convex(Atom): A logical value indicating whether the atom is log-log convex.
is_log_log_concave(Atom): A logical value indicating whether the atom is log-log concave.
canonicalize(Atom): Represent the atom as an affine objective and conic constraints.
graph_implementation(Atom): The graph implementation of the atom.
value_impl(Atom): Returns the value of each of the componets in an Atom. Returns an empty matrix if it's an empty atom
value(Atom): Returns the value of the atom.
grad(Atom): The (sub/super)-gradient of the atom with respect to each variable.
domain(Atom): A list of constraints describing the closure of the region where the expression is finite.
atoms(Atom): Returns a list of the atom types present amongst this atom's arguments