Matlab代数、微积分
代数
solve求解代数方程
solve函数用于求解代数方程
(使用这个函数需要按照要求下载一些包,不然报错)
可以这样写
![](https://img-blog.csdnimg.cn/img_convert/3afb6d669cb7f156172e2c6c1741d76d.png)
又或者这样
![](https://img-blog.csdnimg.cn/img_convert/7dfe24e6f5df29bc02aa95ba8cbba296.png)
有多个变量时,我们可以指定那个变量求解
![](https://img-blog.csdnimg.cn/img_convert/7806982880224ba1c168bf35accda27d.png)
用root函数求解代数方程
roots函数用于求解Octave中的代数方程式
roots用于求解一元多项式的解
每一个向量的分量代表着每个不同次元的系数,按从大到小顺序定义
比如如下代码求解2x-9=0
solve求解二次方程
对于高阶方程,我们求得的解可能小数点后有很多位数,我们可以进行强制转换为double类型,这样就只有4位了
solve求解方程组
注:这里最好先定义好eqns等式,在放到solve函数,不然直接放会报错!
Octave方程组
之前用的roots其实就是Octave方法
![](https://img-blog.csdnimg.cn/img_convert/ba8534adccab2af35d2111aaea7b1524.png)
这里可以看成方程组Ax=b的求解,将方程组系数和左边的解化为矩阵和向量。
展开和收集方程
expand和collect分别用来展开和收集一个方程
展开就是将方程组尽可能地变为多项式,又或是三角函数变为1元
收集就是将方程组展开成多项式
可见,收集比展开稍微**“低级”**一些
因式分解和简化
factor函数因式分解一个表达式,simplify函数简化一个表达式
![](https://img-blog.csdnimg.cn/img_convert/e9a6b76e5b9ab7630f614f2ecaa69d73.png)
微积分
计算极限
limit用于计算极限
单传一个表达式时,意为将自变量趋于0
表达式后可以再指定一个极限值
用Octave计算极限
![](https://img-blog.csdnimg.cn/img_convert/baf2d813acff3665c83ace85eb8dce19.png)
极限基本性质
一些基础知识
![](https://img-blog.csdnimg.cn/img_convert/40f9329528a83c45aaa4a9a5fe6655dc.png)
左右极限
对于一些函数,其某一个点不可导,但我们可以在左边或右边求得左、右极限
如函数:
f(x) = (x - 3)/|x - 3|
在3处不可导,但左、右分别可导
微分
MATLAB提供了diff用于计算符号导数的命令。
以最简单的形式,将要区分的函数作为参数传递给diff命令。
![](https://img-blog.csdnimg.cn/img_convert/30811cd56afc7351b2bff11fc285ea38.png)
高阶导数
使用语法diff(f,n)
![](https://img-blog.csdnimg.cn/img_convert/4a45b843e62971ce5996c6c76950e853.png)
求曲线最大最小值
对于函数y = f(x),图上具有零斜率的点称为stationary points(驻点/临界点)。
换句话说,固定点是f'(x)= 0。
为了找到我们求微分的函数的平稳点,我们需要将导数设置为零并求解方程
步骤:
求1阶导数
然后求解此1阶导数方程(solve)
将上一步得到的解代入原来方程
解微分方程
MATLAB提供了 dsolve用于符号求解微分方程的命令。
![](https://img-blog.csdnimg.cn/img_convert/3d79dd5d795adc2901deff37ef20a8f1.png)
我们可以加入初值
Dy可以直接用
![](https://img-blog.csdnimg.cn/img_convert/dd282fb970eca70787ad372a45664761.png)
集成(Integration)
就是积分
集成处理两种本质上不同的问题:
1.在第一种类型中,给出了函数的导数,我们想找到函数。因此,我们从根本上扭转了分化的过程。这种反向过程称为反微分,或者找到原始函数,或者找到indefinite integral。
2.第二类问题涉及相加大量非常小的数量,然后随着数量的大小接近零而取一个极限,而项的数量趋于无穷大。此过程导致的定义definite integral。
查找不定积分
如果函数的导数f(x)是f'(x),那么我们说f'(x)相对于x的不定积分是f(x)。
MATLAB提供了int用于计算表达式积分的命令
![](https://img-blog.csdnimg.cn/img_convert/9b33c8350d52f4549902c69adb4f94fb.png)
pretty函数使表达式以更易读的方式输出
![](https://img-blog.csdnimg.cn/img_convert/4d31b343327bbdac114b3d49fae3096e.png)
查找定积分
给int函数添加上下限