PyTorch torch.cumulative_trapezoid 函数
torch.cumulative_trapezoid 是 PyTorch 中用于计算函数累积梯形积分的函数。它使用梯形法则计算函数在给定点的累积积分。
函数定义
torch.cumulative_trapezoid(y, x=None, dx=1.0, dim=-1)
参数:
y(Tensor): 被积分的函数值。x(Tensor, 可选): 函数对应的 x 坐标。如果为 None,则使用 dx 步长。dx(float, 可选): x 坐标之间的步长。默认为 1.0。dim(int, 可选): 积分的维度。默认为 -1。
返回值:
torch.Tensor: 返回累积积分结果。
使用示例
实例
import torch
# 创建函数值
y = torch.tensor([1.0, 2.0, 3.0, 4.0, 5.0])
# 累积梯形积分
result = torch.cumulative_trapezoid(y)
print("函数值 y:", y)
print("累积积分结果:", result)
# 创建函数值
y = torch.tensor([1.0, 2.0, 3.0, 4.0, 5.0])
# 累积梯形积分
result = torch.cumulative_trapezoid(y)
print("函数值 y:", y)
print("累积积分结果:", result)
输出结果为:
函数值 y: tensor([1., 2., 3., 4., 5.]) 累积积分结果: tensor([0.0000, 1.5000, 3.5000, 6.0000, 9.0000])
实例 - 指定 x 坐标
import torch
y = torch.tensor([1.0, 2.0, 3.0, 4.0, 5.0])
x = torch.tensor([0.0, 0.5, 1.0, 1.5, 2.0])
result = torch.cumulative_trapezoid(y, x)
print("累积积分结果:", result)
y = torch.tensor([1.0, 2.0, 3.0, 4.0, 5.0])
x = torch.tensor([0.0, 0.5, 1.0, 1.5, 2.0])
result = torch.cumulative_trapezoid(y, x)
print("累积积分结果:", result)

Pytorch torch 参考手册