python微积分求面积_用Python学微积分(微积分应用)

微积分是一种非常重要的“数学分析”思想(方法),在许多领域中都有应用,比如:计算平面面积、曲线长度、空间图形的体积、旋转曲面面积和物理学中的“微元法”等。而如何用好“微积分”是这部分学习的重点。要用好微积分,关键是理解透彻“微分-differential”和“定积分-Integral”的定义。微积分在英文中有时又被称为“Infinitesimal calculus”,即“无穷小量微积分”,这个名字从一定意义上可以帮助我们记忆“微积分”思想:在微观上上研究无穷小量的特征,找出规律,然后回到宏观上计算结果,控制误差。具体方法上,可以参考“Riemann积分”分为五步:分割、取点、近似、求和(求定积分)、分析误差。

一、分割

分割是微积分方法的第一步,也是微积分应用中非常重要的一步。算法中有“分而治之”的策略(Divide-and-conquer algorithms),微积分的“分割”也正暗合这种思想。另外所谓“微观化”,通俗理解就是取待研究的对象的一小部分作为单元,放大了仔细研究,找出特征,然后再总结整体规律。而微积分的“分割”也正是这个“取一小部分作为单元”。

普遍来说,有两种分割方式:直角坐标系分割和极坐标系分割。

1.直角坐标系分割

对于直角坐标系分割,我们已经和熟悉了,前面将定积分定义的时候,就是在直角坐标系下用“矩形逼近”的方法来计算曲线与x轴围成的面积。它是沿x轴分割成n小段{Δxi},即在直角坐标系下分割是按自变量进行分割。

当然,直角坐标系下也可以沿y轴分割,本质上,直角坐标系中沿x轴分割和沿y轴分割意义是一样的。将沿y轴分割看作是:

将函数关系反转,同时也将坐标轴反转。

2,极坐标系分割

同样地,极坐标也是按自变量分割。只是,直观上看,与直角坐标系的分割差异较大。如下图:

显然,极坐标分割的单元形状类似三角形而不是梯形或矩形。

总结:

不论是什么坐标系,都是按自变量进行分割。这是由函数的映射关系决定的,已知自变量,通过函数运算,就可以得到函数值。从图形上来看,这样的分割可以使每个分割单元“不规则的边”的数量最小,最好是只有一条不规则的边。选择好了坐标系,分割就不是问题了,所以,在研究实际问题建模的时候,重要的是选取合适的坐标系。

二、取点

根据积分的定义,取点具有任意性。但是,在实际应用中,为了简化计算或定性分析,我们往往会取一些特殊点,比如左端点或右端点。比如,为了证明这个不等式,我们会把左右两端的式子当作两条曲线的积分,而将中间的和式当作矩形之和,而每个矩形的左右两端点分别落在左右两条曲线上。

此外,Darboux Integral也是取得左右两端点。

三、近似

近似是微积分方法最重要的一步。通过“分割”,有了微观上的“单元”后,这个“单元”还是不太适合直接研究,因为它不规则,只有通过近似,将这个不规则的“单元”近似为一个“规则的单元”,这样才能继续下一步研究。这么说来,“近似”是整个微积分中最有创意,最需要发挥人的联想能力的一步。

1,不规则近似为规则

可以这么说:近似就是在微观上将不规则的“单元”替换为规则的“单元”。回到面积法,我们无法直接计算一个曲边图形的面积,但是在微观单元上,我们可以用一个相似的直边图形来替代它。直观上看,只要这个微观单元足够小,这个替代的误差也就足够小。也就是说,这个替代某种意义上是可行的,误差是可控制的。前面在讲“分割”的时候说“要使不规则的边的数量尽可能小”,实际上也就是方便做“近似”。

2,直线代曲线

更具体一点,在前面介绍的定积分定义和上面的“极坐标图形”问题,可以发现这两类问题近似的实际就是“用直线替代曲线”。在直角坐标系中,这么替代后,分割单元由曲边梯形变成了斜边梯形;极坐标系中,这么替代后分割单元由曲边三角形变成了普通三角形。这一步做完后,你会发现在微观上,原来不可计算的问题变成了可计算的问题了。

注意,在极坐标系中,计算面积时,既可以用“三角形近似”(Triangle),也可以用“圆弧近似”(Arc),后面将讨论这两种近似的误差是一致的。

3,套用计算公式

之所以要将不规则单元替换为规则单元,是因为规则单元可以套用计算公式。

替换完成后,下一步就是针对待求解的问题,对“规则单元”套用已知的公式。待求解的问题不同,套用的公式显然也不同。比如:

1)Riemann和定义的例子

待求解的是在区间[a,b]上曲线与x轴围成的面积,因此套用的是平面面积公式。

2)极坐标系曲线积分(上图)

待求解的是在区间[θ1,θ2]上曲线与原点围成的面积,因此套用的是圆弧面积公式。

3)平面曲线长度

平面曲线在微观上近似为一段段“斜线”(切线),它遵循的是“直角三角形斜边与直边的公式”,即“Pythagoras定理”:

4)极坐标曲线长度

注意,不能直接使用弧长公式

这个公式的推导过程中用到了π,而π本身就是近似得到的。

类似地,我们也可推广到旋转体的体积和表面积。

四、求和

前面几步都是在微观层面进行的,只有通过“求和”(Riemann和)才能回到宏观层面。

其中,Fi表示各个微观单元的公式

五、误差分析

近似”是发挥人联想能力的时候,但联想完了之后,我们要证明这种“近似”是可行的,即证明“误差在可接受范围内”。当然,对于误差的计算是要回到宏观层面上来的。一是我们原本要研究的就是一个宏观问题,最后的计算结果只有回到宏观上看才有意义;二是微观上的小误差有可能累积到宏观上变成大误差,正所谓“差之毫厘谬以千里”。

1,平面曲线积分误差分析

在“定积分”那一节,我通过“无穷小的运算”证明了“梯形近似”的误差 ϵ=O(Δx) ,同时也证明了“矩形近似与梯形近似的误差在同一个级别—— O(Δx) ”。

2,极坐标曲线积分误差分析

现在我们来证明极坐标曲线积分的“三角形近似”和“圆弧近似”的误差 ϵ=O(Δx)。

1)圆弧近似(Arc)

先用弧线代曲线

误差为

再算单元面积

有单元面积公式可知,Si与Δθi是一次线性关系,即 Si∼Δθi ,那么用弧形面积近似后误差

求和后总误差为

注意,这里为了计算方便,假设各子区域的误差相等。

所以,当Δθ→0时,ϵ→0

2)三角形近似(Triangle)

先用直线代曲线,修改面积公式

同样地,可以计算误差为:

根据无穷小的替换

此外,通过无穷小的替换,也可以证明这两个面积相等(Riemann和)

这里关于三角形近似与圆弧近似的论述,可能是因果颠倒的,但是能方便理解。

3,曲线长度计算的误差分析

1)“Δx”代曲线可行吗?

在计算平面曲线的积分时,我们不仅用“Δl”来代替曲线(梯形近似),而且为了简化计算,直接用“Δx”来代替曲线(矩形近似)。有没有很惊讶,这两种近似在求面积的时候误差是一个级别的(等价无穷小)。那么,是不是什么情况下都可以这么近似呢?

答案是,不能!

当我们求曲线长度的时候,如果用“Δx”来代替曲线,那么结果很明显是不对的(误差不可接受)

如下图,直观上都可以感受到这个误差之大。

在计算曲线长度的时候,我们只用“Δl”来代替曲线,并根据“Pythagoras定理”,将“Δl”换算为“Δx”,如下:

2)“Δl”代曲线的误差计算

每个单元误差为

求和后总误差为

注意,这里为了计算方便,假设各小段的误差相等。

所以,当Δl→0时,ϵ→0

3)两种近似的比较

六、练习

求双纽线(lemniscate)

围成的平面区域的面积

解:先看lemniscate的图形,它是一个对称图形,只需要计算其中的四分之一区域的面积即可。

求心形线(heart-line)

围成的平面区域的面积

解:先看heart-line的图形,它也是一个对称图形,只需要计算其中的二分之一区域的面积即可。需要注意的是,为了美观,这个图与公式并没对应,按题中公式画出的是一个水平偏右的心形。

你可能感兴趣的:(python微积分求面积)