API reference
This function generates all possible slices of the provided component along the provided sets. |
|
This function iterates over components (recursively) contained in a block and partitions their data objects into components indexed only by the specified sets. |
|
Partitions components into ComponentData and Components indexed only by the provided set. |
- pyomo.dae.flatten.slice_component_along_sets(component, sets, context_slice=None, normalize=None)[source]
This function generates all possible slices of the provided component along the provided sets. That is, it will iterate over the component’s other indexing sets and, for each index, yield a slice along the sets specified in the call signature.
- Parameters:
component (Component) – The component whose slices will be yielded
sets (ComponentSet) – ComponentSet of Pyomo sets that will be sliced along
context_slice (IndexedComponent_slice) – If provided, instead of creating a new slice, we will extend this one with appropriate getattr and getitem calls.
normalize (Bool) – If False, the returned index (from the product of “other sets”) is not normalized, regardless of the value of normalize_index.flatten. This is necessary to use this index with _fill_indices.
- Yields:
tuple – The first entry is the index in the product of “other sets” corresponding to the slice, and the second entry is the slice at that index.
- pyomo.dae.flatten.flatten_components_along_sets(m, sets, ctype, indices=None, active=None)[source]
This function iterates over components (recursively) contained in a block and partitions their data objects into components indexed only by the specified sets.
- Parameters:
m (BlockData) – Block whose components (and their sub-components) will be partitioned
sets (Tuple of Pyomo Sets) – Sets to be sliced. Returned components will be indexed by some combination of these sets, if at all.
ctype (Subclass of Component) – Type of component to identify and partition
indices (Iterable or ComponentMap) – Indices of sets to use when descending into subblocks. If an iterable is provided, the order corresponds to the order in
sets
. If aComponentMap
is provided, the keys must be insets
.active (Bool or None) – If not None, this is a boolean flag used to filter component objects by their active status. A reference-to-slice is returned if any data object defined by the slice matches this flag.
- Returns:
The first entry is a list of tuples of Pyomo Sets. The second is a list of lists of Components, indexed by the corresponding sets in the first list. If the components are unindexed, ComponentData are returned and the tuple of sets contains only UnindexedComponent_set. If the components are indexed, they are references-to-slices.
- Return type:
List of tuples of Sets, list of lists of Components
- pyomo.dae.flatten.flatten_dae_components(model, time, ctype, indices=None, active=None)[source]
Partitions components into ComponentData and Components indexed only by the provided set.
- Parameters:
model (BlockData) – Block whose components are partitioned
time (Set) – Indexing by this set (and only this set) will be preserved in the returned components.
ctype (Subclass of Component) – Type of component to identify, partition, and return
indices (Tuple or ComponentMap) – Contains the index of the specified set to be used when descending into blocks
active (Bool or None) – If provided, used as a filter to only return components with the specified active flag. A reference-to-slice is returned if any data object defined by the slice matches this flag.
- Returns:
The first list contains ComponentData for all components not indexed by the provided set. The second contains references-to -slices for all components indexed by the provided set.
- Return type:
List of ComponentData, list of Component