现在这个时间节点,大学生应该都是学习了这个高等数学的,即使是大一的新生,也是可以看懂下面的这个图的,实际上就是我们的x有一个微小的变化量的时候,我们的y也会出现一个变化,我们的微分描述的就是这个Y轴上面的变化量和我们的x变化量之间的这个关系;
下面的这个内容属于我们的高等数学里面的微分方程这个章节的内容,下面的这个我放的是最简单的一类方程,就是我们的一阶线性微分方程,还有二阶常系数微分方程; 这个里面涉及我们的特征根,通解和特解相关的这个说明把,我这里就不详细的说明,我觉得这个部分用到再去巩固完全来得及,因为我一直认为我们学习的这个微分方程真的很肤浅,并没有上升到这个应用的层面,所以如果真的是建模需要使用微分方程求解,这个对于我们的能力的要求远比这个高等数学里面的那个章节的学习要求更高;
1)下面的这个第5行里面的就是我们的函数,求解这个函数的定积分;
2)quad就是调用系统里面的函数,这个函数的作用就是求解指定的区间上面的定积分;
这个第一个参数就是我们的函数,第二个参数求解的积分区域的初始值,第三个参数是积分区域的终止值;
前面的两个参数就是我们的这个quad函数的返回值;
1)第四行就是定义函数,两个**表示的就是x的平方,我们对于这个函数求导数;
2)第8行就是求解在x=1位置处的导数值
我们看一下这个代码:
1)这个里面需要使用到一个模块sympy,如果你之前没有,需要在这个pycharm终端里面进行手动的安装;
2)首先需要定义这个y和x,即这个程序里面的2,3行作的事情;
3)第四行就是定义上面的这个微分方程,fiff表示的就是这个阶数,x,2表示的就是y对于x的二阶导,以此类推,这个eq里面的第二个参数就是我们的等式右边的x^2;
4)因为我们没有初始条件所以这个里面会出现c1,c2之类的数字:
这个教程没有说明,但是我自己练习的时候注意到了这个地方,就是直接cv代码会发现报错:
1)symbols是一个工具,作用就是进行这个变量的定义,而且这个工具在我们的sympy里面,所以我们需要先import sympy包包
修改之后的代码如下:
1)定义变量t,使用symbols工具定义;
2)eq就是我们上面需要求解的常微分方程组;4
3)con里面就是相关的初始条件说明;
4)dsolve参数就是表示的,求解这个eq方程组,初始条件就是我们的con里面的内容;
1)首先第6行里面的A就是我们的系数矩阵;
2)eq实际上即使在描述这个方程组,x.diff(t)表示的就是x对于t的微分,也就是导数;
3)A*x实际上就是我们的系数矩阵和未知参数的线性组合,我们把求解微分方程组的问题转化为求解线性方程组,使用矩阵求解,得到相同的结果;
示的就是x对于t的微分,也就是导数;
3)A*x实际上就是我们的系数矩阵和未知参数的线性组合,我们把求解微分方程组的问题转化为求解线性方程组,使用矩阵求解,得到相同的结果;