当前位置: 首页 > news >正文

用Python来学微积分36-牛顿 - 莱布尼茨公式的深度解析

文章目录

    • 一、牛顿 - 莱布尼茨公式
      • 1、数学定义
      • 2、手动求解
      • 3、Python 代码
      • 4、Python 代码执行结果
    • 二、利用牛顿 - 莱布尼茨公式计算含三角函数的定积分
      • 1、数学定义
      • 2、手动求解
      • 3、Python 代码
      • 4、Python 代码执行结果
    • 三、积分方程问题
      • 1、数学定义
      • 2、手动求解
      • 3、Python 代码
      • 4、Python 代码执行结果
    • 四、利用定积分求极限(积分和)
      • 1、数学定义
      • 2、手动求解
      • 3、Python 代码
      • 4、Python 代码执行结果

在微积分的学习中,微积分基本公式,即牛顿 - 莱布尼茨公式,占据着极为重要的地位。它搭建起了不定积分与定积分之间的桥梁,为定积分的计算提供了一种高效且便捷的方法。

一、牛顿 - 莱布尼茨公式

1、数学定义

设函数 f ( x ) f(x) f(x) 在区间 [ a , b ] [a,b] [a,b] 上连续, F ( x ) F(x) F(x) f ( x ) f(x) f(x) [ a , b ] [a,b] [a,b] 上的一个原函数(即 F ′ ( x ) = f ( x ) F'(x)=f(x) F(x)=f(x)),则有 ∫ a b f ( x ) d x = F ( b ) − F ( a ) \int_{a}^{b}f(x)dx = F(b)-F(a) abf(x)dx=F(b)F(a) 。此公式表明,一个连续函数在区间 [ a , b ] [a,b] [a,b] 上的定积分等于它的任意一个原函数在区间端点处的函数值之差。

2、手动求解

以求 ∫ 0 2 x 3 d x \int_{0}^{2}x^{3}dx 02x3dx 为例:

  1. 首先,找到被积函数 f ( x ) = x 3 f(x)=x^{3} f(x)=x3 的一个原函数 F ( x ) F(x) F(x) 。根据求导公式 ( x n ) ′ = n x n − 1 (x^n)' = nx^{n - 1} (xn)=nxn1 ,反推可得 F ( x ) = 1 4 x 4 F(x)=\frac{1}{4}x^{4} F(x)=41x4 ,因为 ( 1 4 x 4 ) ′ = x 3 (\frac{1}{4}x^{4})' = x^{3} (41x4)=x3
  2. 然后,将区间端点 a = 0 a = 0 a=0 b = 2 b = 2 b=2 代入原函数 F ( x ) F(x) F(x) ,计算 F ( b ) − F ( a ) F(b)-F(a) F(b)F(a) ,即 F ( 2 ) − F ( 0 ) = 1 4 × 2 4 − 1 4 × 0 4 = 4 − 0 = 4 F(2)-F(0)=\frac{1}{4}\times2^{4}-\frac{1}{4}\times0^{4}=4 - 0 = 4 F(2)F(0)=41×2441×04=40=4

3、Python 代码

from scipy.integrate import quad# 定义被积函数
def f(x):return x ** 3# 计算定积分
result, error = quad(f, 0, 2)
print("定积分结果:", result)

4、Python 代码执行结果

运行上述代码,输出结果为 定积分结果: 4.0 ,与我们手动计算的结果一致。

image.png

二、利用牛顿 - 莱布尼茨公式计算含三角函数的定积分

1、数学定义

对于形如 ∫ a b ( u ( x ) ± v ( x ) ) d x \int_{a}^{b}(u(x)\pm v(x))dx ab(u(x)±v(x))dx 的定积分,根据定积分的线性性质,有 ∫ a b ( u ( x ) ± v ( x ) ) d x = ∫ a b u ( x ) d x ± ∫ a b v ( x ) d x \int_{a}^{b}(u(x)\pm v(x))dx=\int_{a}^{b}u(x)dx\pm\int_{a}^{b}v(x)dx ab(u(x)±v(x))dx=abu(x)dx±abv(x)dx 。当被积函数包含三角函数时,同样先找到其原函数,再利用牛顿 - 莱布尼茨公式计算。

2、手动求解

以求 ∫ 0 π 2 ( 1 − 2 sin ⁡ x ) d x \int_{0}^{\frac{\pi}{2}}(1 - 2\sin x)dx 02π(12sinx)dx 为例:

  1. 根据定积分的线性性质,将其拆分为两个定积分的差: ∫ 0 π 2 ( 1 − 2 sin ⁡ x ) d x = ∫ 0 π 2 1 d x − 2 ∫ 0 π 2 sin ⁡ x d x \int_{0}^{\frac{\pi}{2}}(1 - 2\sin x)dx=\int_{0}^{\frac{\pi}{2}}1dx-2\int_{0}^{\frac{\pi}{2}}\sin xdx 02π(12sinx)dx=02π1dx202πsinxdx
  2. 分别找到原函数, ∫ 1 d x = x + C \int 1dx=x+C 1dx=x+C ∫ sin ⁡ x d x = − cos ⁡ x + C \int\sin xdx=-\cos x+C sinxdx=cosx+C
  3. 代入牛顿 - 莱布尼茨公式计算:
    • ∫ 0 π 2 1 d x = x ∣ 0 π 2 = π 2 − 0 = π 2 \int_{0}^{\frac{\pi}{2}}1dx=x|_{0}^{\frac{\pi}{2}}=\frac{\pi}{2}-0=\frac{\pi}{2} 02π1dx=x02π=2π0=2π
    • 2 ∫ 0 π 2 sin ⁡ x d x = − 2 cos ⁡ x ∣ 0 π 2 = − 2 ( cos ⁡ π 2 − cos ⁡ 0 ) = − 2 ( 0 − 1 ) = 2 2\int_{0}^{\frac{\pi}{2}}\sin xdx=-2\cos x|_{0}^{\frac{\pi}{2}}=-2(\cos\frac{\pi}{2}-\cos0)=-2(0 - 1)=2 202πsinxdx=2cosx02π=2(cos2πcos0)=2(01)=2
    • 所以 ∫ 0 π 2 ( 1 − 2 sin ⁡ x ) d x = π 2 − 2 \int_{0}^{\frac{\pi}{2}}(1 - 2\sin x)dx=\frac{\pi}{2}-2 02π(12sinx)dx=2π2

3、Python 代码

import numpy as np
from scipy.integrate import quad# 定义被积函数
def f(x):return 1 - 2 * np.sin(x)# 计算定积分
result, error = quad(f, 0, np.pi / 2)
print("定积分结果:", result)

4、Python 代码执行结果

运行代码,输出结果为 定积分结果: -0.42920367320510344 ,由于 π ≈ 3.14 \pi\approx3.14 π3.14 π 2 − 2 ≈ 1.57 − 2 = − 0.43 \frac{\pi}{2}-2\approx1.57 - 2=-0.43 2π21.572=0.43 ,与计算结果相符。

image.png

三、积分方程问题

1、数学定义

对于积分方程 f ( x ) = g ( x ) − ∫ a b f ( x ) d x f(x)=g(x)-\int_{a}^{b}f(x)dx f(x)=g(x)abf(x)dx 这种形式,可通过令 ∫ a b f ( x ) d x = A \int_{a}^{b}f(x)dx = A abf(x)dx=A(将定积分看作一个常数),将原方程转化为关于 f ( x ) f(x) f(x) A A A 的方程,求解出 f ( x ) f(x) f(x) 后,再代入计算 A A A 的值。

2、手动求解

以求函数 f ( x ) f(x) f(x) 满足 f ( x ) = x 2 − ∫ 0 1 f ( x ) d x f(x)=x^{2}-\int_{0}^{1}f(x)dx f(x)=x201f(x)dx 中的 ∫ 0 1 f ( x ) d x \int_{0}^{1}f(x)dx 01f(x)dx f ( x ) f(x) f(x) 的表达式为例:

  1. ∫ 0 1 f ( x ) d x = A \int_{0}^{1}f(x)dx = A 01f(x)dx=A ,则 f ( x ) = x 2 − A f(x)=x^{2}-A f(x)=x2A
  2. f ( x ) = x 2 − A f(x)=x^{2}-A f(x)=x2A 两边在区间 [ 0 , 1 ] [0,1] [0,1] 上积分:
    • ∫ 0 1 f ( x ) d x = ∫ 0 1 ( x 2 − A ) d x \int_{0}^{1}f(x)dx=\int_{0}^{1}(x^{2}-A)dx 01f(x)dx=01(x2A)dx
    • 计算右边积分: ∫ 0 1 ( x 2 − A ) d x = ( 1 3 x 3 − A x ) ∣ 0 1 = 1 3 − A \int_{0}^{1}(x^{2}-A)dx=(\frac{1}{3}x^{3}-Ax)|_{0}^{1}=\frac{1}{3}-A 01(x2A)dx=(31x3Ax)01=31A
  3. 因为 ∫ 0 1 f ( x ) d x = A \int_{0}^{1}f(x)dx = A 01f(x)dx=A ,所以 A = 1 3 − A A=\frac{1}{3}-A A=31A ,移项可得 2 A = 1 3 2A=\frac{1}{3} 2A=31 ,解得 A = 1 6 A = \frac{1}{6} A=61
  4. A = 1 6 A=\frac{1}{6} A=61 代入 f ( x ) = x 2 − A f(x)=x^{2}-A f(x)=x2A ,得到 f ( x ) = x 2 − 1 6 f(x)=x^{2}-\frac{1}{6} f(x)=x261

3、Python 代码

from sympy import symbols, integrate, solve# 定义符号变量
x = symbols('x')
A = symbols('A')# 定义 f(x) 的表达式
f_x = x ** 2 - A# 计算定积分并建立方程
eq = integrate(f_x, (x, 0, 1)) - A# 解方程
solution = solve(eq, A)
f_x_final = f_x.subs(A, solution[0])print("∫₀¹f(x)dx 的值:", solution)
print("f(x) 的表达式:", f_x_final)

4、Python 代码执行结果

运行代码,输出结果为 ∫₀¹f(x)dx 的值: 1/6f(x) 的表达式: x**2 - 1/6 ,与我们手动计算的结果相同。

image.png

四、利用定积分求极限(积分和)

1、数学定义

对于和式 ∑ k = 1 n f ( k n ) 1 n \sum_{k = 1}^{n}f(\frac{k}{n})\frac{1}{n} k=1nf(nk)n1 ,当 n → ∞ n\to\infty n 时,其极限可以转化为定积分 ∫ 0 1 f ( x ) d x \int_{0}^{1}f(x)dx 01f(x)dx 。这是基于定积分的定义,将区间 [ 0 , 1 ] [0,1] [0,1] 进行 n n n 等分,每个小区间的长度为 Δ x = 1 n \Delta x=\frac{1}{n} Δx=n1 ,取 ξ k = k n \xi_k=\frac{k}{n} ξk=nk 作为每个小区间的代表点。

2、手动求解

以求极限 lim ⁡ n → ∞ ∑ k = 1 n 1 n + k \lim_{n\to\infty}\sum_{k = 1}^{n}\frac{1}{n + k} limnk=1nn+k1 为例:

  1. 对和式进行变形: ∑ k = 1 n 1 n + k = ∑ k = 1 n 1 n ( 1 + k n ) = 1 n ∑ k = 1 n 1 1 + k n \sum_{k = 1}^{n}\frac{1}{n + k}=\sum_{k = 1}^{n}\frac{1}{n(1+\frac{k}{n})}=\frac{1}{n}\sum_{k = 1}^{n}\frac{1}{1+\frac{k}{n}} k=1nn+k1=k=1nn(1+nk)1=n1k=1n1+nk1
  2. n → ∞ n\to\infty n 时,根据定积分定义,它等价于 ∫ 0 1 1 1 + x d x \int_{0}^{1}\frac{1}{1 + x}dx 011+x1dx
  3. 找到原函数 F ( x ) = ln ⁡ ( 1 + x ) F(x)=\ln(1 + x) F(x)=ln(1+x) ,利用牛顿 - 莱布尼茨公式计算: ∫ 0 1 1 1 + x d x = ln ⁡ ( 1 + x ) ∣ 0 1 = ln ⁡ 2 − ln ⁡ 1 = ln ⁡ 2 \int_{0}^{1}\frac{1}{1 + x}dx=\ln(1 + x)|_{0}^{1}=\ln2-\ln1=\ln2 011+x1dx=ln(1+x)01=ln2ln1=ln2

3、Python 代码

import sympy as sp# 定义符号变量
x = sp.symbols('x')# 定义被积函数
f_x = 1 / (1 + x)# 计算定积分
result = sp.integrate(f_x, (x, 0, 1))
print("极限结果:", result)

4、Python 代码执行结果

运行代码,输出结果为 极限结果: log(2) ,即 ln ⁡ 2 \ln2 ln2 ,与手动计算结果一致。

image.png

通过对牛顿 - 莱布尼茨公式及其应用的详细讲解与示例演示,希望能帮助大家更好地理解和掌握这一微积分中的重要工具。


往期精彩回顾

  • 用Python来学微积分33-定积分的应用实例详解
  • 用Python来学微积分34-定积分的基本性质及其应用
  • 用Python来学微积分35-变上限定积分

专栏导航目录 《程序员AI之路:从Python起步》完全学习导航

完整代码已开源 ai-learning-path,欢迎Star和Fork!


参考资料

  1. 扈志明《微积分》教材

互动邀请:如果你对本章内容有独特的理解或在实际应用中遇到过有趣的问题,欢迎在评论区分享交流!

http://www.dtcms.com/a/582517.html

相关文章:

  • 网站建设规章制度软件app开发需要多少钱
  • 网站建设外出考察信息家在深圳房网论坛首页
  • 测试开发工程师面经准备(sxf)
  • 2026商业航天展,中国商业航天规模化发展的加速器
  • 网站建设与推广范文防下载 的视频网站 怎么做
  • TrueNas Scale配置immich集成GPU硬件加速,用于智能模型,人脸识别,OCR文本识别加速
  • 旅游网站建设规划报告怎么写个人做外贸网站违法吗
  • FLUX1. 代码解读
  • 朔州路桥建设有限责任公司网站新乡发布最新通告
  • 基于黏菌算法的路径规划
  • Java--HTTP(上)
  • 【软考架构】软件测试-白盒测试方法中的几种测试准则(覆盖准则)
  • 网站建设类公司排名中国建筑人才网怎么样
  • Dify 迁移后常见问题解决方案与使用腾讯云cos上传文件 FILES_URL缺失
  • 郑州网站建设培训网站域名备案认证
  • 专业制作网站公司哪家好软件开发项目总结
  • 切换海外动态IP的方法
  • 设计业务网站外贸自建站类型
  • 网站建设在哪里发布网络优化工程师工资
  • Linux环境下的C语言编程(十七)
  • JAVA算法练习题day64
  • 小华HC32F460串口性能问题与处理思路
  • Java_Hashtable使用及扩容
  • Django序列化器
  • 跳表与B+树
  • 上海外贸网站优化自己做提卡网站
  • 学习日报 20251107|Nacos 注册同一服务多实例架构图
  • 营销型网站建设运营苏州园区
  • 广州站在哪个区酒店 网站构建
  • 网站开发的合同网络工程师中级职称报考条件