第二单元 用python学习微积分(十八)微积分第二基本定理

本文内容来自于学习麻省理工学院公开课:单变量微积分-微积分第二基本定理-网易公开课

开发环境准备:CSDN

目录

一、反向来看FTC1

1、比较FTC1和均值定理

二、考试练习

1、 ​

三、微积分第二基本定理(FTC2)

1、定义:如果函数 f 是连续的,同时 ​, 同时a, x 计算时看作常量),就有 G'(x) = f(x)

2、用途:G(x) 可以用来解如下微分方程组

3、例题

(1)   ​

4、证明

五、FTC2的重点


一、反向来看FTC1

FTC1:如果F'(x) = f(x), \int_{a}^{b} f(x)dx = F(b) - F(a)......(F = \int f(x)dx)

反向来看: F(b) - F(a) = \int_{a}^{b} f(x)dx

用 f 来理解 F 和 F'

F' 的信息可以推导出 F 的信息

1、比较FTC1和均值定理

\Delta F = F(b) - F(a) , \Delta x= b-a

\Delta F = \int_{a}^{b} f(x)dx ......(FTC1)

\frac{\Delta F}{\Delta x} = \frac{1}{b-a} \int_{a}^{b} f(x)dx ......(这里\frac{1}{b-a} \int_{a}^{b} f(x)dx是 f 的平均值)

不等式说明:

\Delta F = Ave(F') \Delta x ......(这里F' 和 f 是一回事儿,没有区别)

那为啥这个平均值不是F的平均值而是 F'的平均值呢?

因为这个式子是求f(x) 从 a 到 b 的累加

老师举了个例子

a=0, b=n

\frac{1}{n}\sum_{i=0}^{n} f(i) = \frac{f(0) + f(1)...+f(n)}{n} \approx \frac{1}{n} \int_{0}^{n} f(x)dx

等式的左边是离散的均值,而右边是连续的均值。(个人感觉不是很好的例子)

个人认为积分其实是f(x)与x轴围成的图形的面积和,可以把它想成无数个很瘦的长方形组成的图形, 因此当把这个图形分成n等分的时候,每一份的函数值相加求平均( \frac{f(0) + f(1)...+f(n)}{n},矩形高的平均)之后再乘以x轴的覆盖范围(如 \int_{a}^{b} f(x)dx 中的b-a,矩形底边长),就可以得到一个近似的面积值即\frac{f(0) + f(1)...+f(n)}{n} (b-a) , 而显然当 n \rightarrow \infty , \frac{f(0) + f(1)...+f(n)}{n} (b-a)= \int_{a}^{b} f(x)dx , 所以\frac{f(0) + f(1)...+f(n)}{n}|_{n \rightarrow \infty}= \frac{\int_{a}^{b} f(x)dx}{ (b-a)}

from sympy import *
import numpy as np 

import matplotlib.pyplot as plt 

fig = plt.figure()
ax = fig.add_subplot(1, 1, 1)
ax.spines['left'].set_position('zero')
ax.spines['bottom'].set_position('zero')
ax.spines['right'].set_color('none')
ax.spines['top'].set_color('none')
ax.xaxis.set_ticks_position('bottom')
ax.yaxis.set_ticks_position('left')
ax.set_aspect(1 ) 

def DrawXY(xFrom,xTo,steps,expr,color,label,plt):
    yarr = []
    xarr = np.linspace(xFrom ,xTo, steps) 
    for xval in xarr:
        yval = expr.subs(x,xval)
        yarr.append(yval)
    y_nparr = np.array(yarr) 
    plt.plot(xarr, y_nparr, c=color, label=label)    

def DrawRects(xFrom,xTo,steps,expr,color,plt, label=''):
    width = (xTo - xFrom)/steps
    xarrRect = []
    yarrRect = []
    area = 0
    xprev = xFrom
    yvalAll =  0
    for step in range(steps):
        yval = expr.subs(x,xprev + width)
        xarrRect.append(xprev)
        xarrRect.append(xprev)
        xarrRect.append(xprev + width)
        xarrRect.append(xprev + width)
        xarrRect.append(xprev)
        yarrRect.append(0)
        yarrRect.append(yval)
        yarrRect.append(yval)
        yarrRect.append(0)
        yarrRect.append(0)
        area += width * yval
        plt.plot(xarrRect, yarrRect, c=color)    
        xprev= xprev + width
        yvalAll += yval
    print('============================')    
    if len(label)!=0:
        print(label)    
    print('============================')
    print('width = ', width)
    print('ave = ', yvalAll / steps)
    print('area = ',area)
    areaFinal = (integrate(expr, (x,xFrom,xTo)))
    print ('area final = ',areaFinal)
    print ('ave final = ', areaFinal / (xTo - xFrom))

def TangentLine(exprY,x0Val,xVal):
    diffExpr = diff(exprY)
    x1,y1,xo,yo = symbols('x1 y1 xo yo')
    expr = (y1-yo)/(x1-xo) - diffExpr.subs(x,x0Val)
    eq = expr.subs(xo,x0Val).subs(x1,xVal).subs(yo,exprY.subs(x,x0Val))
    eq1 = Eq(eq,0)
    solveY = solve(eq1)
    return xVal,solveY

def DrawTangentLine(exprY, x0Val,xVal1, xVal2, clr, txt):
    x1,y1 = TangentLine(exprY, x0Val, xVal1)
    x2,y2 = TangentLine(exprY, x0Val, xVal2)
    plt.plot([x1,x2],[y1,y2], color = clr, label=txt)
    
def Newton(expr, x0):
    ret = x0 - expr.subs(x, x0)/ expr.diff().subs(x,x0)
    return ret

   
x = symbols('x')
expr = x


DrawXY(0,10,10,expr,'blue','',plt)
DrawRects(0,10,10,expr,'green',plt)


#plt.legend(loc='lower right')
plt.show()

FTC1 \Delta F = Ave(F') \Delta x

(minF')\Delta x \leq Ave(F') \Delta x \leq (maxF')\Delta x

均值定理 (MVT) \Delta F = F'(c) \Delta x ......(a<c<b)

(minF')\Delta x \leq F'(c) \Delta x \leq (maxF')\Delta x

二、考试练习

1、 F'(x) = \frac{1}{1+x} , F(0) = 1

均值定理暗示了A < F(4) < B, 求A, B.

(根据均值定理,这里 F'(x) = \frac{1}{1+x}大于0, x的范围(0,4) 所以F是递增的)

F(4) - F(0) = F'(c)(4-0)= \frac{4}{1+c}(根据均值定理 0<c<4)

F'(0) = 4, F'(4) = \frac{4}{5}

\frac{4}{5} <F(4) - F(0) < 4

\frac{4}{5} < F(4) -1 < 4

\frac{9}{5} < F(4) < 5

FTC1: F(4) - F(0) = \int_{0}^{4}\frac{dx}{1+x}

\int_{0}^{4}\frac{dx}{1+x} < (\int_{0}^{4}\frac{dx}{1+0} = x|_{0}^{4} = 4)

\int_{0}^{4}\frac{dx}{1+x} > (\int_{0}^{4}\frac{dx}{1+4} = \frac{1}{5}\int_{0}^{4}dx = \frac{4}{5})

\frac{4}{5} < \int_{0}^{4}\frac{dx}{1+x} < 4

\frac{4}{5} < F(4) -F(0) < 4

\frac{4}{5} < F(4) -1 < 4

\frac{9}{5} < F(4) < 5

这里不是很明白为啥要计算这个, 可能实际应用中需要类似这样计算不等式

很显然根据换元法

u = 1+x, du = dx

F(4) - F(0) = \int_{0}^{4}\frac{dx}{1+x} = \int_{0}^{5}\frac{du}{u} = ln(u)|_{0}^{5} = ln(5)

几何图形:

x = symbols('x')
expr = 1/(1+x)

DrawXY(0,4,100,expr,'green','f(x) = 1/(1+x)',plt)
DrawRects(0,4,50,expr,'green',plt, 'f(x) = 1/(1+x)')

expr = 1*x**0
DrawXY(0,4,100,expr,'blue','f(x) = 1',plt)
DrawRects(0,4,1,expr,'blue',plt,'f(x) = 1')

expr = 1/(5*x**0)
DrawXY(0,4,100,expr,'red','f(x) = 1/5',plt)
DrawRects(0,4,1,expr,'red',plt,'f(x) = 1/5')

plt.legend(loc='lower right')
plt.show()

Upper and Lower riemann sum

从图形上很容易看出这个面积的大小关系,这个大的蓝色矩形其实就是积分求和时取函数最大值,并只分出一个矩形(也叫Upper RS ),这个小的红色的矩形就是积分求和时取函数最小值,并只分出一个矩形(也叫Lower RS )

老师这时说基于以上这些,基本可以避免使用均值定理,因为有这样的更好的方法,用简单的积分就可以得到均值定理得到的任何边界。

三、微积分第二基本定理(FTC2)

1、定义:如果函数 f 是连续的,同时 G(x) = \int_{a}^{x}f(t)dt ; ( a \leq t \leq x, 同时a, x 计算时看作常量),就有 G'(x) = f(x)

2、用途:G(x) 可以用来解如下微分方程组

y' = f

y(a) = 0(必要条件)

老师表示微分方程并不总是能解,但是有以上前提,则微分方程总有解

3、例题

(1)   \frac{d}{dx} \int_{1}^{x} \frac{dt}{t^2} =

\frac{d}{dx}\int_{1}^{x} t^{-2}dt = \frac{d}{dx}((-t^{-1})|_{1}^{x}) = \frac{d}{dx}(-x^{-1} +1) = x^{-2}

这里老师的解法是:

在FTC2中由于 G'(x) = f(x) ,G (x) - G (1) = \int_{1}^{x} \frac{dt}{t^2} , G(1) = \int_{1}^{1} \frac{dt}{t^2} = 0 , G (x) = \int_{1}^{x} \frac{dt}{t^2} ,

\frac{d}{dx} \int_{1}^{x} \frac{dt}{t^2} = G'(x) = f(x) = \frac{1}{x^2}

后面老师对这道例题的补充:

F(x) = -\frac{1}{x} , F'(x) = \frac{1}{x^2} , G(x) =F(x) - F(1) = -\frac{1}{x} - (-1) = 1-\frac{1}{x}

\int_{1}^{x} \frac{dt}{t^2} =\frac{-1}{t}|_{1}^{2} ......(F) = (1-\frac{1}{t}) |_{1}^{2} ......(G)

4、证明

由上图 G(x) = \int_{a}^{x}f(t)dt ,这个G(x)就是箭头所指位置,曲线f(x)在(0,a)区间与x轴围成的面积,考虑 G'(x)=\frac{dG}{dx} , 上图中dG就是红色填充部分,当 \Delta x很小时,这部分图形相似于矩形,而这个矩形的高就是箭头所指的 y = f(x) , 而它的面积等于底边x高,也就是f(x)\Delta x , \Delta G = f(x)\Delta x ,

lim_{\Delta x\rightarrow0} \frac{\Delta G}{\Delta x} = f(x)( f是连续的, 因为需要f有有效值 )

,则有 G'(x) = f(x)

四、微积分第一基本定理(FTC1)的证明

F' = f ( f 是连续的 )

G(x) = \int_{a}^{x} f(t) dt

根据FTC2 G'(x) = f(x) , F' = f

F'(x) =G'(x)\Rightarrow F(x) = G(x) +c(c是常数)

F(b) - F(a) = (G(b) +c) - (G(a) +c) = G(b) - G(a)

G(x) = \int_{a}^{x} f(t) dt, 把 b 和 a 分别代入

G(b) - G(a) = \int_{a}^{b} f(t) dt - \int_{a}^{a} f(t) dt = \int_{a}^{b} f(t) dt - 0 = \int_{a}^{b} f(t) dt

五、FTC2的重点

L'(x) = \frac{1}{x} ; L(1) = 0;

由FTC2, L(x) = \int_{1}^{x} \frac{dt}{t}(下标为1是因为 L(1) = 0)

由FTC2造就很多新的函数:

y' = e^{-x^2} , y(0) = 0

F(x) = \int_{0}^{x} e^{-t^2} dt

比如 e^{-t^2}钟形函数在(0,x) 和 x轴围成的面积不能被任何其他函数表现, 由于它已经完全超越了代数的范畴,所以他被称为超越函数。

这里试一下

x = symbols('x')
expr = np.e**(-x**2)

DrawXY(0,2,100,expr,'green','f(x) =np.e**(-x**2)',plt)
DrawRects(0,2,50,expr,'green',plt, 'f(x) = np.e**(-x**2)')

从上面的结果可以看到这个面积的值是无法用代数方法计算的, 只能用更多的分割矩形来做近似计算

另外老师提到了 \pi ,这是个超越数,不能用代数表示,另外e也是超越数。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Bullseye

您的鼓励是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值