Maple计算积分胜出Mathematica一局(案例)

——虽然Maple的界面用起来比较不称心,我从来不敢否认它的强大。这不,碰上一个简单定积分计算的例子:Maple可以计算出来,mathematica不支持。

问题

一个包含 向下取整 函数的定积分:

10x1xdx=?

解答

一些研究

分段函数piecewise求导数、积分原函数都不能用光滑连续函数类似的办法。通常解决较难问题的一般方法是 把待求解的陌生或难的问题,通过一些变换,转化成已经求解过的问题的形式、或者相对熟悉的容易解决的问题的形式

变换转化 有不同的类型,取决于思路、经验、视野。

我想到的是,原始问题中的定积分,实际就是求面积。

被积函数绘制出来时分段的如下形式;绘出积分对应的面积到蓝色部分:

<<MaTeX`


Plot[x Floor@(1/x)//Evaluate,
{x,0.01,1},
PlotStyle->Directive[Black,Thin],
Filling->Axis,FillingStyle->Blue,
AxesOrigin->{0,0}, AspectRatio->1,ImageSize->800,WorkingPrecision->30,
PlotPoints->10000,
FrameStyle->BlackFrame,Frame->True,

FrameTicks->{ {Table[{x,MaTeX[x,"DisplayStyle"->True,Magnification->3/2]},{x, Range[0,5]/5}],None},
{Table[{x,MaTeX[x,"DisplayStyle"->True,Magnification->3/2]},{x, 1/Range[1,7]}],None}}

]

这里写图片描述

边长为1的正方形面积减去一系列小直角三角形的面积之和即可。这些小三角形的上直角边长度实际对应于下面的值:

{112,1213,1314,,1k1k+1,}

侧直角边长为1减去下角点纵坐标。所有的下角点都在直线 y=1x 上。从而容易得到蓝色部分的总面积,也就是定积分的数值:

SBLUE=1k=1+12k(k+1)2=π212

这个级数很奇妙。利用这个结果 k=1+1k2=π26 ,可以得到:

k=1+1k(k+1)2=k=1+((1k1k+1)1(k+1)2)

=k=1+(1k1k+1)k=1+1(k+1)2=1(π261)=2π26

最终结果从而可以知道。

把图从新画一下,

Plot[{1, x Floor@(1/x) // Evaluate}, {x, 0.1^5, 1}, 
 PlotStyle -> {Red, Directive[None, Thin]}, 
 Filling -> {1 -> {{2}, {Red}}}, AxesOrigin -> {0, 0}, 
 AspectRatio -> 1, ImageSize -> 800, WorkingPrecision -> 30, 
 PlotPoints -> 10000, FrameStyle -> BlackFrame, Frame -> True, 
 FrameTicks -> {{Table[{x, 
      MaTeX[x, "DisplayStyle" -> True, Magnification -> 3/2]}, {x, 
      Range[0, 5]/5}], 
    None}, {Table[{x, 
      MaTeX[x, "DisplayStyle" -> True, Magnification -> 3/2]}, {x, 
      1/Range[1, 7]}], None}}]

这里写图片描述

这种图只能象征性表示下。从说明的角度看,似乎不是特别严谨。或者,要交代面积跟积分之间等价,太费口舌。——一直觉得这样的证明,有那么点欠缺,即无法充分、完全地“形式化”为机器能懂的方式。这难道就是人工智能跟人类智能之间根本的差距所在?

此外,看到一个变量代换 t=1x ,然后把积分变化为无穷多个 (k,k+1) 上积分的级数和的方法,把向下取整函数等价变换为积分区间的下限,更加简单巧妙。——Mathematica做不出这个积分实在让人扼腕叹息啊。

这篇博客真正的重点不在这个积分的求解,而在于,这种坐标轴和轴上标记的绘制小技巧(因为求积分有更简单的变量代换方法);用演示定积分计算的这种方法对应的分析过程,来演示这种绘制坐标轴刻度的技巧,看上去很恰当。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值