scipp.spatial.scaling_from_vector#

scipp.spatial.scaling_from_vector(*, value)#

Creates a scaling transformation from a provided 3-vector.

Parameters:

value (ndarray[tuple[Any, ...], dtype[TypeVar(_Float, bound= float64 | float32, covariant=True)]] | Sequence[TypeVar(_Float, bound= float64 | float32, covariant=True)]) – A list or NumPy array of 3 values, corresponding to scaling coefficients in the x, y and z directions respectively.

Returns:

Variable – A scalar variable of dtype linear_transform3.

See also

scipp.spatial.scalings_from_vectors

Create multiple scaling transformations.

Examples

Create a scaling transformation:

>>> import scipp as sc
>>> scale = sc.spatial.scaling_from_vector(value=[2, 3, 4])
>>> scale
<scipp.Variable> ()  linear_transform3  [dimensionless]  ((2, 0, 0), , (0, 3, 0), , (0, 0, 4), )

Apply the scaling to a vector:

>>> vec = sc.vector(value=[1, 1, 1], unit='m')
>>> scale * vec
<scipp.Variable> ()    vector3              [m]  (2, 3, 4)