>> xa= x<=a
xa=
0 0 0 0 1 1 1 1 1
>> b=[0 1 0; 1 0 1; 0 0 1]; >> ab=a&b ab=
0 1 0 1 0 1 0 0 1 (3)线性代数的常用函数
a' 求矩阵a的转置 det(a) 求矩阵a的行列式 eig(a) 求矩阵a的特征值 inv(a)或a ^ (-1) 求矩阵a的逆矩阵 rank(a) 求矩阵a的秩
trace(a) 求矩阵a的迹(对角线元素之和) rref(a) 求矩阵a的行最简形
null(A,?r?) 求系数矩阵为A的齐次方程的基础解系 pinv(A)*b 求非齐次方程的特解
例如: >> a=[2 1 –3 –1; 3 1 0 7; -1 2 4 –2; 1 0 –1 5];
>> a1=det(a); >> a2=det(inv(a)); >> a1*a2 ans= 1
6.2.4 Matlab在微积分中的应用
1.极限运算
格式:limit (f, t, a, ?left? or ?right?)
功能:求符号变量t 趋近a 时,函数f 的(左或右)极限.?left? 表示求左极限,?right? 表示求右极限,省略时表示求一般极限;a省略时变量t 趋近0; t
省略时默认变量为x ,若无x则寻找(字母表上)最接近字母x 的变量.在求解之前应先申明自变量,也就是要先定义符号变量.
2t??例如:求极限lim?1??x??x??3x的命令及结果为:
>> syms x t %定义符号变量
>> limit ((1+2*t/x)^(3*x) , x, inf ) % inf为无穷大 ans=
exp(6*t)
再如求函数x / |x| ,当x?0时的左极限和右极限,命令及结果为: >> syms x
>> limit(x/abs(x), x, 0, ?left?) ans = -1 >> limit(x/abs(x),x, 0, ?right?) ans = 1 2.导数
格式: diff (f,t,n)
功能: 求函数f 对变量 t的n 阶导数.当n省略时,默认 n=1;当t省略时,默认变量x, 若无x时则查找字母表上最接近字母x 的字母.
例如:求函数f=a*x^2+b*x+c对变量 x的一阶导数, 命令及结果为
>> syms a b c x >> f=a*x^2+b*x+c; >> diff(f) ans=
2*a*x+b
求函数f 对变量b的一阶导数(可看作求偏导), 命令及结果为 >> diff(f,b)
ans=x
求函数f 对变量x的二阶导数, 命令及结果为
>> diff(f,2)
ans=2*a
3.积分 格式: int(f,t,a,b)
功能: 求函数f 对变量 t从a 到b的定积分. 当a和b省略时求不定积分;当t省略时, 默认变量为(字母表上)最接近字母x的变量.
例如:求函数f=a*x^2+b*x+c对变量x不定积分, 命令及结果为
>> syms a b c x
>> f=a*x^2+b*x+c; >> int(f) ans=
1/3*a*x^3+1/2*b*x^2+c*x
求函数f 对变量b不定积分, 命令及结果为 >> int(f,b)
ans=
a*x^2*b+1/2*b^2*x+c*b
求函数f 对变量x 从 1到5的定积分, 命令及结果为
>> int(f,1,5) ans=
124/3*a+12*b+4*c
4.求极值
格式: fminbnd(f,x1,x2)
功能:求函数f在区间[x1,x2]上的极小值.
例如: 求函数f?x??x3e?x在[]-10,10]上的极大值,命令及结果为: >> f=?-x.3^.*exp(-x)?; %fminbnd要求函数加引号 >>fminbnd(f,-10,10) %求极限值 ans= 3.000 5. 化简和代换
MATLAB符号运算工具箱中,包括了较多的代数式化简和代换功能,下面仅举出部分常见运算.
simplify 利用各种恒等式化简代数式 expand 将乘积展开为和式 factor 把多项式转换为乘积形式 collect 合并同类项
horner 把多项式转换为嵌套表示形式
例如:进行合并同类项执行 >> syms x
>> collect(3*x^3-0.5*x^3+3*x^2) ans=
5/2*x^3+3*x^2)
进行因式分解执行
>> factor(3*x^3-0.5*x^3+3*x^2) ans=
1/2*x^2*(5*x+6)
6.解方程 (1)代数方程 格式:solve (f,t)
功能:对变量t 解方程f=0,t 缺省时默认为x 或最接近字母x 的符号变量. 例如:求解一元二次方程f=a*x^2+b*x+c的实根,
>> syms a b c x >> f=a*x^2+b*x+c; >> solve (f,x) ans=
[1/2/a*(-b+(b^2-4*a*c)^ (1/2))]
[1/2/a*(-b-(b^2-4*a*c)^ (1/2))] (2)微分方程
格式:dsolve(?s?, ?s1?, ?s2?,…, ?x?)
其中s为方程;s1,s2,……为初始条件,缺省时给出含任意常数c1,c2,……的通解;x为自变量,缺省时默认为t . 例如:求微分方程y??1?y2的通解 >> dsolve(?Dy=1+y^2?) ans= tan(t+c1)