CompoundBoundingBox#

class astropy.modeling.bounding_box.CompoundBoundingBox(bounding_boxes: dict[Any, ModelBoundingBox], model, selector_args: _SelectorArguments, create_selector: Callable | None = None, ignored: list[int] | None = None, order: str = 'C')[source]#

Bases: _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.

Attributes Summary

bounding_boxes

create_selector

named_selector_tuple

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#
selector_args#

Methods Documentation

copy()[source]#
fix_inputs(model, fixed_inputs: dict) Self[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, ignored: list | None = None, order: str = 'C', _preserve_ignore: bool = False, **kwarg) Self[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 representations

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’