bundles / scipy 1.18.0 / scipy / _external / array_api_extra / _delegation / create_diagonal
function
scipy._external.array_api_extra._delegation:create_diagonal
Signature
def create_diagonal(x: Array, /, offset: int = 0, xp: ModuleType | None = None) → ArraySummary
Construct a diagonal array.
Parameters
x: arrayAn array having shape
(*batch_dims, k).offset: int, optionalOffset from the leading diagonal (default is
0). Use positive ints for diagonals above the leading diagonal, and negative ints for diagonals below the leading diagonal.xp: array_namespace, optionalThe standard-compatible namespace for
x. Default: infer.
Returns
: arrayAn array having shape
(*batch_dims, k+abs(offset), k+abs(offset))withxon the diagonal (offset byoffset).
Examples
import array_api_strict as xp import array_api_extra as xpx x = xp.asarray([2, 4, 8])⚠
Traceback (most recent call last):
File "<doctest scipy._external.array_api_extra._delegation:create_diagonal[0]>", line 1, in <module>
x = xp.asarray([2, 4, 8])
^^
NameError: name 'xp' is not defined. Did you mean: 'np'?
xpx.create_diagonal(x, xp=xp)
⚠Traceback (most recent call last):
File "<doctest scipy._external.array_api_extra._delegation:create_diagonal[0]>", line 1, in <module>
xpx.create_diagonal(x, xp=xp)
^^^
NameError: name 'xpx' is not defined
xpx.create_diagonal(x, offset=-2, xp=xp)
⚠Traceback (most recent call last):
File "<doctest scipy._external.array_api_extra._delegation:create_diagonal[0]>", line 1, in <module>
xpx.create_diagonal(x, offset=-2, xp=xp)
^^^
NameError: name 'xpx' is not defined
Aliases
scipy.differentiate.xpx.create_diagonal