用Python增强你的积分技巧
在处理科学计算或物理问题时,计算某些函数的积分是非常常见的。
在这篇简短的文章中,我想演示一下在Python中计算一维函数积分的3种方法。我们将把这些方法分为两种情况:
- 第一种情况:计算采样函数的积分
- 第二种情况:计算通用函数的积分
在第一种情况中,我们想要积分的函数已经被采样到一些样本点,并且我们无法访问底层的“真实”函数。例如,我们不知道该函数的“公式”,也无法采样该函数的其他点。换句话说,我们只有x和对应的y值的数组。
在第二种情况中,我们假设我们有一个函数对象,我们可以向其传递一个样本点,它将返回该点处函数的值。这是理想的方法,因为我们可以访问函数的所有信息。
请注意,我们始终可以使用采样的方法:如果我们仍然可以访问函数,我们可以选择采样点并使用它们对函数进行采样,并使用第一种方法。 但正如我们将看到的,选择这些采样点恰好是计算干净积分的重要部分。
积分定义
在这篇第一篇文章中,我们将专注于返回另一个单一值的单变量函数。我们要计算的积分是标准定义:
现在我们的目标是尽可能准确地计算I —— 在我们对“f”了解的范围内。例如,我们将尝试计算以下积分:
使用基本数学,你可以证明该积分的值为
在这篇文章中,我们将看到不同的方法来计算积分,并看看我们离真实值有多近。
第一种方法:积分采样函数
假设我们从一个采样函数中获取数据,形式为X数组和相应的Y值…