CompoundBoundingBox

class astropy.modeling.bounding_box.CompoundBoundingBox(bounding_boxes: Dict[Any, astropy.modeling.bounding_box.ModelBoundingBox], model, selector_args: astropy.modeling.bounding_box._SelectorArguments, create_selector: Optional[Callable] = None, order: str = 'C')[source]

Bases: astropy.modeling.bounding_box._BoundingDomain

A model’s compound bounding box

Parameters
bounding_boxesdict
A dictionary containing all the ModelBoundingBoxes that are possible

keys -> _selector (extracted from model inputs) values -> ModelBoundingBox

modelModel

The Model this compound bounding_box is for.

selector_args_SelectorArguments

A description of how to extract the selectors from model inputs.

create_selectoroptional

A method which takes in the selector and the model to return a valid bounding corresponding to that selector. This can be used to construct new bounding_boxes for previously undefined selectors. These new boxes are then stored for future lookups.

orderoptional, str

The ordering that is assumed for the tuple representation of the bounding_boxes.

Methods

validate :

Contructs a valid complex bounding_box

Attributes Summary

bounding_boxes

create_selector

named_selector_tuple

order

selector_args

Methods Summary

copy()

fix_inputs(model, fixed_inputs)

Fix the bounding_box for a fix_inputs compound model.

prepare_inputs(input_shape, inputs)

Get prepare the inputs with respect to the bounding box.

validate(model, bounding_box[, …])

Construct a valid compound bounding box for a model.

Attributes Documentation

bounding_boxes
create_selector
named_selector_tuple
order
selector_args

Methods Documentation

copy()[source]
fix_inputs(model, fixed_inputs: dict)[source]

Fix the bounding_box for a fix_inputs compound model.

Parameters
modelModel

The new model for which this will be a bounding_box

fixed_inputsdict

Dictionary of inputs which have been fixed by this bounding box.

prepare_inputs(input_shape, inputs)Tuple[Any, Any, Any][source]

Get prepare the inputs with respect to the bounding box.

Parameters
input_shapetuple

The shape that all inputs have be reshaped/broadcasted into

inputslist

List of all the model inputs

Returns
valid_inputslist

The inputs reduced to just those inputs which are all inside their respective bounding box intervals

valid_indexarray_like

array of all indices inside the bounding box

all_out: bool

if all of the inputs are outside the bounding_box

classmethod validate(model, bounding_box: dict, selector_args=None, create_selector=None, order: str = 'C')[source]

Construct a valid compound bounding box for a model.

Parameters
modelModel

The model for which this will be a bounding_box

bounding_boxdict

Dictionary of possible bounding_box respresentations

selector_argsoptional

Description of the selector arguments

create_selectoroptional, callable()

Method for generating new selectors

orderoptional, str
The order that a tuple representation will be assumed to be

Default: ‘C’