(function from pyomo.dae.flatten)
pyomo.dae.flatten
This function iterates over components (recursively) contained in a block and partitions their data objects into components indexed only by the specified sets.
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 a ComponentMap is provided, the keys must be in sets.
sets
ComponentMap
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.
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.
List of tuples of Sets, list of lists of Components