MatrixConstraint
(class from pyomo.core.base.matrix_constraint
)
- class pyomo.core.base.matrix_constraint.MatrixConstraint(*args, **kwds)[source]
Bases:
Mapping
,IndexedConstraint
Defines a set of linear constraints of the form:
lb <= Ax <= ub
where A is specified in the standard compressed sparse row (CSR) format. Variables must be provided as a list, whose ordering maps the variables to their column index in the associated coefficient matrix. This modeling component allows for fast construction of large linear constraint sets as it bypasses Pyomo’s expression system.
- Parameters:
A_data (list) – The values of the CSR format sparse matrix
A_indices (list) – The column indices of the CSR format sparse matrix
A_indptr (list) – The row start-stop pointers of the CSR format sparse matrix
lb (list) – The list of constraint lower bounds
ub (list) – The list of constraint upper bounds
x (list) – The list of pyomo variables mapped to their appropriate column
Example
>>> from pyomo.environ import * >>> from pyomo.core.base.matrix_constraint import MatrixConstraint >>> model = ConcreteModel() >>> >>> # x_{i} <= x_{i+1} (for i in {1,2}) >>> model.v = Var(RangeSet(0,2)) >>> data = [1.0, -1.0, 1.0, -1.0] >>> indices = [ 0, 1, 1, 2] >>> indptr = [0, 2, 4] >>> lb = [None, None] >>> ub = [ 0.0, 0.0] >>> x = [model.v[0], model.v[1], model.v[2]] >>> model.c = MatrixConstraint(data, indices, indptr, lb, ub, x)
Methods
__init__
(A_data, A_indices, A_indptr, lb, ub, x)activate
()Set the active attribute to True
add
(index, expr)Add a constraint with a given index.
clear
()Clear the data in this component
clear_suffix_value
(suffix_or_name[, expand])Clear the suffix value for this component data
cname
(*args, **kwds)DEPRECATED.
construct
([data])Construct the expression(s) for this constraint.
Set the active attribute to False
dim
()Return the dimension of the index
display
([prefix, ostream])Print component state information
get
(k[,d])get_suffix_value
(suffix_or_name[, default])Get the suffix value for this component data
getname
([fully_qualified, name_buffer, ...])Returns the component name associated with this object.
Return an dictionary id->index for all ComponentData instances.
Return the index set
Return True if this class is a Pyomo component
Return True if this class has been constructed
is_expression_type
([expression_system])Return True if this numeric value is an expression
Return true if this component is indexed
Return True if this class is a Pyomo Boolean object.
Return True if this numeric value is a named expression
Return True if this class is a Pyomo numeric object
Return False unless this class is a parameter object
Return True if this component is a reference, where "reference" is interpreted as any component that does not own its own data.
Return False unless this class is a variable object
items
()DEPRECATED.
iterkeys
()DEPRECATED.
DEPRECATED.
keys
()model
()Returns the model associated with this object.
Returns the parent of this object.
Returns the component associated with this object.
pprint
([ostream, verbose, prefix])Print component information
reconstruct
([data])REMOVED: reconstruct() was removed in Pyomo 6.0.
Return self.model()
set_suffix_value
(suffix_or_name, value[, expand])Set the suffix value for this component data
set_value
(value)Set the value of a scalar component.
TODO
type
()DEPRECATED.
Return True if this can be used as a model component.
values
()Attributes
Return the active attribute
Return the class type for this component
Get the component name only within the context of the immediate parent container.
Get the fully qualified component name.
Member Documentation
- activate()
Set the active attribute to True
- clear()
Clear the data in this component
- clear_suffix_value(suffix_or_name, expand=True)
Clear the suffix value for this component data
- cname(*args, **kwds)
DEPRECATED.
Deprecated since version 5.0: The cname() method has been renamed to getname(). The preferred method of obtaining a component name is to use the .name property, which returns the fully qualified component name. The .local_name property will return the component name only within the context of the immediate parent container.
- deactivate()
Set the active attribute to False
- dim()
Return the dimension of the index
- display(prefix='', ostream=None)
Print component state information
This duplicates logic in Component.pprint()
- get(k[, d]) D[k] if k in D, else d. d defaults to None.
- get_suffix_value(suffix_or_name, default=None)
Get the suffix value for this component data
- getname(fully_qualified=False, name_buffer=None, relative_to=None)
Returns the component name associated with this object.
- id_index_map()
Return an dictionary id->index for all ComponentData instances.
- index_set()
Return the index set
- is_component_type()
Return True if this class is a Pyomo component
- is_constructed()
Return True if this class has been constructed
- is_expression_type(expression_system=None)
Return True if this numeric value is an expression
- is_indexed()
Return true if this component is indexed
- is_logical_type()
Return True if this class is a Pyomo Boolean object.
Boolean objects include constants, variables, or logical expressions.
- is_named_expression_type()
Return True if this numeric value is a named expression
- is_numeric_type()
Return True if this class is a Pyomo numeric object
- is_parameter_type()
Return False unless this class is a parameter object
- is_reference()
Return True if this component is a reference, where “reference” is interpreted as any component that does not own its own data.
- is_variable_type()
Return False unless this class is a variable object
- items() a set-like object providing a view on D's items
- iteritems()
DEPRECATED.
Return a list (index,data) tuples from the dictionary
Deprecated since version 6.0: The iteritems method is deprecated. Use dict.items().
- iterkeys()
DEPRECATED.
Return a list of keys in the dictionary
Deprecated since version 6.0: The iterkeys method is deprecated. Use dict.keys().
- itervalues()
DEPRECATED.
Return a list of the component data objects in the dictionary
Deprecated since version 6.0: The itervalues method is deprecated. Use dict.values().
- keys() a set-like object providing a view on D's keys
- model()
Returns the model associated with this object.
- parent_block()
Returns the parent of this object.
- parent_component()
Returns the component associated with this object.
- pprint(ostream=None, verbose=False, prefix='')
Print component information
- reconstruct(data=None)
REMOVED: reconstruct() was removed in Pyomo 6.0.
Re-constructing model components was fragile and did not correctly update instances of the component used in other components or contexts (this was particularly problemmatic for Var, Param, and Set). Users who wish to reproduce the old behavior of reconstruct(), are comfortable manipulating non-public interfaces, and who take the time to verify that the correct thing happens to their model can approximate the old behavior of reconstruct with:
component.clear() component._constructed = False component.construct()
- root_block()
Return self.model()
- set_suffix_value(suffix_or_name, value, expand=True)
Set the suffix value for this component data
- set_value(value)
Set the value of a scalar component.
- to_dense_data()
TODO
- type()
DEPRECATED.
Return the class type for this component
Deprecated since version 5.7: Component.type() method has been replaced by the .ctype property.
- valid_model_component()
Return True if this can be used as a model component.
- values() an object providing a view on D's values
- property active
Return the active attribute
- property ctype
Return the class type for this component
- property local_name
Get the component name only within the context of the immediate parent container.
- property name
Get the fully qualified component name.