例如:求一元二次方程a*x^2+b*x+c=0的根. f=sym('a*x^2+b*x+c') 或 f='a*x^2+b*x+c'
solve(f) ans=
[1/2/a*(-b+(b^2-4*c*a)^(1/2))] [1/2/a*(-b-(b^2-4*c*a)^(1/2))] solve(f, a) ans= -(b*x+c)/x^2 7、解微分方程
MATLAB中主要用dsolve求符号解析解:
s=dsolve(‘方程1’, ‘方程2’,?,’初始条件1’,’初始条件2’ ?,’自变量’)
用字符串方程表示,自变量缺省值为t。导数用D表示,2阶导数用D2表示,以此类推。S返回解析解。在方程组情形,s为一个符号结构。 1、求下列微分方程的解析解 (1)y'?ay?b
(2)y''?sin(2x)?y,y(0)?0,y'(0)?1 (3)
f'?f?g,g'?g?f,f'(0)?1,g'(0)?1
方程(1)求解的MATLAB代码为:
>>clear;
>>s=dsolve('Dy=a*y+b')
结果为
s =-b/a+exp(a*t)*C1
方程(2)求解的MATLAB代码为:
>>clear;
>>s=dsolve('D2y=sin(2*x)-y','y(0)=0','Dy(0)=1','x') >>simplify(s) %以最简形式显示s
结果为
s =(-1/6*cos(3*x)-1/2*cos(x))*sin(x)+(-1/2*sin(x)+1/6*sin(3*x))*cos(x)+5/3*sin(x)
15
ans =-2/3*sin(x)*cos(x)+5/3*sin(x) 方程(3)求解的MATLAB代码为:
>>clear;
>>s=dsolve('Df=f+g','Dg=g-f','f(0)=1','g(0)=1') >>simplify(s.f) %s是一个结构 >>simplify(s.g)
结果为
ans =exp(t)*cos(t)+exp(t)*sin(t) ans =-exp(t)*sin(t)+exp(t)*cos(t) 2、求解微分方程
y'??y?t?1,y(0)?1,
先求解析解,再求数值解,并进行比较。由
>>clear;
>>s=dsolve('Dy=-y+t+1','y(0)=1','t') >>simplify(s)
可得解析解为y?t?e?t。 三、实验作业
1、求下列函数的极限:
cosx?e(1)limx?0x4?x22?2t? (2) lim?1??
x???x??3x2x?ln2x?11(3)lim (4)lim
x?0x?0?x1?cosx2、按要求实现下面的求导运算: (1)已知y?e2xln(x2?1)tan(?x),求y?,y(3); ?y)ex22x2?y2xy(2)已知z?(x2?z?2z?2z,,,求。 ?x?x2?x?y3、已知函数
f(x)?esin2x,x?[2,3?]。使用Matlab软件,完成下面的实验任务: f(x)的一阶导数,二阶导数,并画出它们相应的曲线。
16
(1)求出函数
(2)观察函数的单调区间,凹凸区间,以及极值点和拐点。 4、使用Matlab软件,完成下列积分运算: (1)求不定积分
?xedx,?3?x2dx?xx2?1;
x(2)求定积分:??3dx,2sinx4
??20sin4xcos2xdx;
实验五:使用Matlab解决线性代数问题
一、实验目的与要求
1、掌握Matlab软件对矩阵的基本操作命令;
2、掌握用Matlab软件去计算行列式、解线性方程组、计算特征值与特征向量等,以解决线性代数里面的相关计算问题。 二、实验内容 1、矩阵的代数运算
如果已经输入矩阵A和B,则可由下述命令对其进行运算 A’ A的转置 A+B 加法 k*A 数k 乘A A*B 乘法 inv(A) A的逆阵 A^x A的x次方 A\\B 左除A?1B B/A 右除BA?1
A.*B 矩阵元素符号前加“.”,其含义是矩阵元素的群运算; round(A) 对矩阵A中所有元素进行四舍五入运算。
17
2、矩阵的特征参数运算
在进行科学运算时,常常要用到矩阵的特征参数,如矩阵的行列式、秩、迹、条件数等,在Matlab可以用下述命令轻松地进行这些运算。 det(A) A的行列式 rank(A) A 的秩 trace(A) A 的迹
size(A) 输出A 的行数和列数 P=Poly(A) 求A 的特征多项式 roots(P ) 求多项式P的零点 [V,U]=eig(A) A的特征值与特征向量
?1??11.求矩阵A???2??0 >> clear
023122321?3??的行列式的值. 1??1? >> A=[1 0 2 1;-1 2 2 3; 2 3 3 1;0 1 2 1]; >> det (A) ans= 14
矩阵还可以如下输入: A=[1,0,2,1;-1,2,2,3;2,3,3,1;0,1,2,1]
a10?1b12.计算行列式
0?1c00?1>> clear
00. 1d>> syms a b c d %生成变量 >> A=[a 1 0 0;-1 b 1 0;0 –1 c 1;0 0 –1 d]; %生成符号矩阵 >> DA=det (A) DA=
a*b*c*d?a*?ba*?d*c? d1 18
?123??324?????3.求矩阵A?212与矩阵B?253的和与差及5A?3B. ???????331???231??>> clear
>> A=[1 2 3;2 1 2;3 3 1]; >> B=[3 2 4;2 5 3;2 3 1]; >> C=A+B; >> D=A-B; >> C,D C=
4 4 7 4 6 5 5 6 2 D=
-2 0 -1 0 -4 -1 1 0 0 5*A-3*B ans =
-4 4 3 4 -10 1 9 6 2
?123??324??与矩阵B??253?的乘积. 2124.求矩阵A?????????331???231??>> clear
>> A=[1 2 3;2 1 2;3 3 1]; >> B=[3 2 4;2 5 3;2 3 1]; >> C=A*B , D=B*A C=
19