vdot

Contents

vdot#

class saiunit.math.vdot(a, b, *, precision=None, preferred_element_type=None, **kwargs)#

Perform a conjugate multiplication of two 1D vectors.

Flattens both inputs and computes the dot product of the conjugate of a with b. The resulting unit is a.unit * b.unit.

Parameters:
  • a (Union[Array, ndarray, number, bool, saiunit.Quantity]) – First argument.

  • b (Union[Array, ndarray, number, bool, saiunit.Quantity]) – Second argument.

  • precision (Any) – Either None (default) or a Precision enum value, or a tuple of two such values for a and b.

  • preferred_element_type (Union[str, type[Any], dtype, SupportsDType, None]) – Accumulation and result dtype.

Returns:

output – The conjugate dot product of the inputs. The resulting unit is a.unit * b.unit.

Return type:

Union[Array, saiunit.Quantity]

Examples

>>> import saiunit as u
>>> a = u.math.array([1.0, 2.0, 3.0]) * u.meter
>>> b = u.math.array([4.0, 5.0, 6.0]) * u.second
>>> u.math.vdot(a, b)  # scalar Quantity with unit meter * second