几个问题教你学会微积分。(给高中表弟,讲讲大学里的微积分,也分享给大家)。

目录

问题1. 圆周率π怎么来的?

问题2.圆面积公式,怎么来的?

番外:抖音的一大争论点: 0.999的循环等不等于1?

问题3.初始速度为0,每秒速度+1。问:10秒跑多少米?

番外:自由落体

番外:阿基里斯悖论,人永远也追不上乌龟。

问题4.已知路程与时间的关系如图所示,求速度与时间的关系。

问题5: 已知速度与时间的关系如图所示,求路程与时间的关系。

例题1:求下图 阴影部分面积

例题2: 求 y= sinx 在0到π的面积。

番外:自然对数e

应用题:如图所示,我们有一个各边长为 l = 1m 的正立方体,其密度与水相同。将这个物体放入水中,其上表面正好与水面平齐。在理想情况下,下表面有一只手将其托举起,做匀速直线运动。当物体的下表面正好与水面平齐时,即物体运动了距离  l,问:这时手做了多少功(g = 10N/kg)?


回顾小学知识

问题1. 圆周率π怎么来的?

远古时期,拿根棍,转一圈画个圆,拿根绳子比一比量一量,二者除一除,发现棍和绳是固定的比例。

所以 l =  2 π r  。

(公元前20世纪,一块古巴比伦石匾清楚地记载了圆周率π=25/8=3.125。)

问题2.圆面积公式,怎么来的?

小学老师说过,我们可以把扇形当三角形,只要分的足够多,拿么误差就会很小。我记忆犹新。

所以 S =π r²

================

番外:抖音的一大争论点: 0.999的循环等不等于1?

我认为:肯定是等于的。

因为 1 - 0.999... = 0

有人要说了,不等于0,等于0.000...1

0.999...是无限循环小数,和\frac{}{}\frac{1}{3}=0.333... 一样,是现实世界存在的确切的数。

而所谓的0.000...1,他不是无限循环小数,1到底在第几位也没人知道。换句话说,0.000...1,唯一能确定的,就是他的第1位是0,第2位是0,第n位是0,他的第n+1位也是0,这是不是和0.000的循环没区别。所以1-0.99... = 0。

=========

回到小学知识。

小明匀速跑步,2秒1米。路程S如下,

显然,速度等于0.5,也就是y=0.5x的斜率。

如果确定速度,也能推出路程。

对于t0,因为s=vt,其路程也可以说 等于阴影部分的面积。

现在,我们离开小学知识,离开舒适的 “匀速直线”,来到高中。

小明开始加速运动。

问题3.初始速度为0,每秒速度+1。问:10秒跑多少米?

显然,不能直接s=vt,因为v是一直在均匀变化的。

所以我们可以,分段计算,假设在一段时间内v不变。

如图左所示,分成5段。

我们可以分段计算并相加:

0到2s,速度0,路程0。

2到4秒,速度2,路程4。

4到6秒,速度4,路程8。

6到8秒,速度6,路程12。

8到10秒,速度8,路程16。

总计路程40。

只要分的足够多,拿么误差就会很小。显然无限分下去,在图上看会越来越接近一个三角形。

所以       S =1/2t^2 = 50

也可以通过数理计算,假设分成n份,n无穷大。

那么每段的时间都是10/n。

而速度在不断变大。第1段的速度是10/n,第2段的速度是2*10/n,第i段的速度是i*10/n,第n段的速度是10。

也就是一个等差数列求和,100/n²(1+2+3+...+n)。

所以:

其中,极限:

=========补充==========

番外:自由落体

学到这应该知道 自由落体公式 是怎么来的了吧(不知道的再看一遍问题3)*

从楼上 跳下:

==========================

番外:阿基里斯悖论,人永远也追不上乌龟。

让乌龟在阿基里斯前面1000米处开始和阿基里斯赛跑。若阿基里斯跑了1000米,所用的时间为t,此时乌龟便领先他100米;当阿基里斯跑完下一个100米时,他所用的时间为t/10,乌龟仍然前于他10米;当阿基里斯跑完下一个10米时,他所用的时间为t/100,乌龟仍然前于他1米…… 所以永远也无法追上他。

                                                                                                              -------------公元前5世纪

意思一样 换个好计算的数字:

乌龟一秒一米,人一秒两米,乌龟先跑10s,问什么时候追上?

小学生都会。2x-20 = x,x = 20。

现在用阿基里斯的思想来解题:

乌龟先跑10s跑了10米,人要追上这10米要用5秒,这5秒乌龟又跑了5米,人要追上这5米又要用2.5秒,这2.5秒乌龟又跑了2.5米,人要追上这2.5米又要用1.25s,这1.25秒乌龟又跑了1.25米,人要追上这1.25米又要用0.625秒,这0.625秒乌龟又跑了0.625米。。。。。。。。。。。。。

似乎永远也算不完(阿基里斯是这样认为的)。

2025年上过一点学的都知道,算的完。

总时长T = 5 + 2.5 + 1.25 +0.625 +....,即

T = 10*\frac{1}{2}+10*\frac{1}{4}+10*\frac{1}{8}+10*\frac{1}{16}+...

图形:

数理:

两边同时乘以1/2

两式子相减

n趋向无穷大。

(等比无穷级数求和公式,韦达,1593年)

==================================

回到主线。

刚刚的问题3,是根据速度求路程,现在根据路程求速度。

问题4.已知路程与时间的关系如图所示,求速度与时间的关系。

上过高中的都知道,在这里,速度就是函数的斜率,可以直接,开导开导。

求导得y‘ = 2x。所以V=2t。

没问题,但这里有的老师可能只教你求导,没教你为什么。

对于某点的斜率,我们可以切出一段 来计算。还是那句话,只要切的足够小,就够准。

直角三角形求斜边:

求导公式可归纳为:

例题: 使用此公式,推导 sinx 的导数,推导e^{x}的导数。

问题5: 已知速度与时间的关系如图所示,求路程与时间的关系。

小明,初始速度10米每秒,跑不动了,每秒速度-1,10秒后停下了。请画出路程与速度的函数曲线。

如果是计算总路程,那太简单了,根据上面的经验 一秒算出等于50.(算不出也别学了,洗洗睡吧)。

速度曲线,也就是说 导数 y’ = 10 - x;

谁的导数等于y’ = 10 - x?呢,显然,y=10x的导数等于10,y = 0.5x²的导数等于x。所以不难看出,原函数 y = 10x - 0.5x²。(看不出来怎么办?多导,导多了就知道反过来是什么样了)。

将x=10带人,y=50。

积分说白了就是根据导数求原函数,此题的定积分可写作:

所以程与速度的函数曲线:

牛顿莱布尼茨公式(十七世纪)

例题1:求下图 阴影部分面积

答案:

例题2: 求 y= sinx 在0到π的面积。

答案:

至此,你已经学会了微积分,请记住下列的经典函数。

================

番外:自然对数e

高中经常用:

n = 1 , e = 2

n = 2 ,e = 1.5² = 2.5

n = 10 ,e  = 1.1的十次方  = 2.5937

n = 无穷,e = 2.7...

==============

学会微积分,有什么实际应用呢?来道物理题。能给他秒了,说明你会了。

来道初中物理题,测试智商。

温馨提示(做功 W=F S)(浮力F = ρ水 g v排)

应用题:如图所示,我们有一个各边长为 l = 1m 的正立方体,其密度与水相同。将这个物体放入水中,其上表面正好与水面平齐。在理想情况下,下表面有一只手将其托举起,做匀速直线运动。当物体的下表面正好与水面平齐时,即物体运动了距离  l,问:这时手做了多少功(g = 10N/kg)?

分析:

如果没有水的话,这道题非常简单,因为受力平衡,F手 = mg ,所以

W = F手*l =  mgl = 1000kg*10N/kg*1m = 10000J

现在有了水F手就不等于mg了,而是F手 = mg - F浮。

初始时因为物体密度和水一样,所以F手 = 0;而最终时刻F手 = mg。

那么F手是怎样变化的呢?

对于向上的位移s(单位m)(范围0到1):

F手 = mg - ρ水 g v排 = mg - ρ水g  l² s = 1000kg * 10N/kg - 1000kg/m³ *10N/kg * 1m² * (1-s)

     = 10000 - 10000(1-s)

     = 10000s (N)

(至此,这道题 可归结为  目录-问题3。 可直接秒 ,W= 5000J)

所以:

=================================

番外:泰勒公式

现有一函数 f(x)长的奇奇怪怪。能不能用p(x)近似的表示f(x)? ,p(x)则由常见的x,x平分,x三次方构成。

1. 对于某点 a。 f(a) = c0。

我们让p(a) = f(a)。所以p(x)=c0。

显然,p(x)不能代表f(x),他们只有在a点处相等

2. a 点之后f(x)会怎么变,变化趋势是什么?

找趋势就要求导,(导数正则增,导数负则减,导小则变化小,导大则变化大)

f '(a) = c1

所以

p(x)变成了 f(x)在a点的切线。(图上看,f函数在增,导数是正的,c1是正的)

重合的部分变多了。

3. 继续下去

f  ’’ (x) =  c2

p(x)变成了2次函数。(图上看,a处,f函数的增加变慢,导数在变小,导数的导数是负的,c2是负的)

重合的部分又变多了。

4.再继续下去

为了更接近,增加系数

无穷无尽的继续下去会越来越近

所以

火速牢记:

(英国数学家布 鲁克·泰勒,1712年)

----------------------------------------------------------------------

求下面的极限

在0处,泰勒公式 

所以 等于1。

-------------------------------------------------------------

只会硬算。

x = 0.1

x - 1 = 10/9 -1 = 1/9

内容概要:本文档详细介绍了基于MATLAB实现的多头长短期记忆网络(MH-LSTM)结合Transformer编码器进行多变量时间序列预测的项目实例。项目旨在通过融合MH-LSTM对时序动态的细致学习和Transformer对全局依赖的捕捉,显著提升多变量时间序列预测的精度和稳定性。文档涵盖了从项目背景、目标意义、挑战与解决方案、模型架构及代码示例,到具体的应用领域、部署与应用、未来改进方向等方面的全面内容。项目不仅展示了技术实现细节,还提供了从数据预处理、模型构建与训练到性能评估的全流程指导。 适合人群:具备一定编程基础,特别是熟悉MATLAB和深度学习基础知识的研发人员、数据科学家以及从事时间序列预测研究的专业人士。 使用场景及目标:①深入理解MH-LSTM与Transformer结合的多变量时间序列预测模型原理;②掌握MATLAB环境下复杂神经网络的搭建、训练及优化技巧;③应用于金融风险管理、智能电网负荷预测、气象预报、交通流量预测、工业设备健康监测、医疗数据分析、供应链需求预测等多个实际场景,以提高预测精度和决策质量。 阅读建议:此资源不仅适用于希望深入了解多变量时间序列预测技术的读者,也适合希望通过MATLAB实现复杂深度学习模型的开发者。建议读者在学习过程中结合提供的代码示例进行实践操作,并关注模型训练中的关键步骤和超参数调优策略,以便更好地应用于实际项目中。
### 回答1: 可以使用Python编程语言来帮助小表弟计算给定的非负整数的位数。具体的方法是将该整数转换为字符串,然后使用len()函数来计算字符串的长度,即为该整数的位数。以下是示例代码: num = 123456789 num_str = str(num) num_digits = len(num_str) print("该整数的位数为:", num_digits) 输出结果为:该整数的位数为: 9 这样,小表弟就可以通过这个程序来准确地计算任何一个非负整数的位数了。 ### 回答2: 题目描述 小明的表弟学会数数,给他一串数字让小表弟去数有多少位,小表弟总是数错。 现要你通过编程帮小表弟计算给定的一个非负整数的位数。 输入格式 一个非负整数n(n<=100000000)。 输出格式 一个整数,表示n的位数。 样例输入 23 样例输出 2 思路分析 这道题目相当于是一道练习数位分解的题目。 题目中已经说明了输入的是一个非负整数,因此考虑将这个数字按照数位进行分解。 例如,对于数字12345而言,按照数位进行分解的结果应该是1、2、3、4、5,很明显,这个数字共有五位。 因此,我们可以借助一个循环将这个数字按照数位进行分解,每次分解完一位就将数字n除以10,然后继续分解下一位,直到将数字n分解完毕为止。 代码实现 ### 回答3: 题目描述 小表弟学会数数,他可以清楚地认识数字,但是他总是数错数字的位数。现在给他一个非负整数,请您编写一个程序帮他计算数字的位数。 输入格式 一个大于等于零的整数,即要计算位数的非负整数。 输出格式 输入整数的位数。 输入样例1 321 输出样例1 3 输入样例2 43954 输出样例2 5 输入样例3 0 输出样例3 1 解题思路 题目要求计算一个非负整数的位数,我们可以使用数学方法来解决。我们知道,一个整数的位数可以通过对它取对数然后向下取整得到。例如,一个三位数的对数为2.48,向下取整后即为2。因此,我们可以使用log10函数来计算出一个数的位数。 注意,当输入整数为0时,其位数为1。 具体实现 我们可以使用C++中的log10函数求出一个数的对数,代码如下。 #include <cstdio> #include <cmath> using namespace std; int main() { int n; scanf("%d", &n); if(n == 0) { //特判输入整数为0的情况 printf("1\n"); } else { int ans = floor(log10(n)) + 1; printf("%d\n", ans); } return 0; } 注意,我们需要使用floor函数向下取整,否则有可能会因为精度问题出现错误。 代码演示
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值