mindspore.ops.trapz

View Source On Gitee
mindspore.ops.trapz(y, x=None, *, dx=1.0, dim=- 1)[source]

Compute the trapezoidal rule along dim.

The spacing between elements is specified by the tensor x or the scalar dx , default 1 .

\[\mathop{ \int }\nolimits_{{}}^{{}}{y}{ \left( {x} \right) } \text{d} x\]
Parameters
  • y (Tensor) – The input tensor to integrate.

  • x (Tensor, optional) – If specified, defines spacing between values.

Keyword Arguments
  • dx (float, optional) – The spacing between elements. Default 1.0 . If x is specified, dx does not take effect.

  • dim (int, optional) – The dimension along which to compute the trapezoidal rule. Default -1 .

Returns

Tensor

Supported Platforms:

Ascend GPU CPU

Examples

>>> import mindspore
>>> y = mindspore.tensor([[1., 2., 3.], [2., 3., 4.], [3., 2., 1.]])
>>> # case 1: Integrate over a regular grid, with spacing 1.
>>> output = mindspore.ops.trapz(y, dx=1.)
>>> print(output)
[4. 6. 4.]
>>>
>>> # case 2: Integrate over an irregular grid.
>>> x = mindspore.tensor([[1, 2, 3], [1, 3, 5], [1, 4, 7]])
>>> output = mindspore.ops.trapz(y, x)
>>> print(output)
[ 4. 12. 12.]