{ } Raw JSON

bundles / scipy latest / scipy / _lib / array_api_extra / _lib / _funcs / broadcast_shapes

function

scipy._lib.array_api_extra._lib._funcs:broadcast_shapes

source: /scipy/_lib/array_api_extra/_lib/_funcs.py :190

Signature

def   broadcast_shapes ( * shapes : tuple[float | None, ...] )  →  tuple[int | None, ...]

Summary

Compute the shape of the broadcasted arrays.

Extended Summary

Duplicates numpy.broadcast_shapes, with additional support for None and NaN sizes.

This is equivalent to xp.broadcast_arrays(arr1, arr2, ...)[0].shape without needing to worry about the backend potentially deep copying the arrays.

Parameters

*shapes : tuple[int | None, ...]

Shapes of the arrays to broadcast.

Returns

: tuple[int | None, ...]

The shape of the broadcasted arrays.

Notes

This function accepts the Array API's None for unknown sizes, as well as Dask's non-standard math.nan. Regardless of input, the output always contains None for unknown sizes.

Examples

import array_api_extra as xpx
xpx.broadcast_shapes((2, 3), (2, 1))
xpx.broadcast_shapes((4, 2, 3), (2, 1), (1, 3))

See also

array_api.broadcast_arrays

Function to broadcast actual arrays.

numpy.broadcast_shapes

Equivalent NumPy function.

Aliases

  • scipy.differentiate.xpx.broadcast_shapes