资源描述:
《matlab在线性代数中的应用》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Matlab在线性代数中的应用目标要求•会给矩阵赋值•会进行矩阵的基本运算,包括:加、减、数乘,乘法,转置,幂等运算•会用命令inv计算矩阵的逆•会用命令det计算行列式;•会用命令rank计算矩阵的秩;•会用命令rref把矩阵变为行最简型;•会用命令rref计算矩阵的逆•会用命令rref解方程组的解•会用命令rref找出向量组的最大无关组•会用命令null计算齐次线性方程组的基础解系•会用左除运算计算非齐次方程组的特解•会用命令orth把向量组正交规范化•会用命令eig计算矩阵的特征值和特征向量•会用命令eig把二次型标准化•会用命令eig判断二次型的
2、正定性1矩阵赋值•赋值语句一般形式变量=表达式(或数)如:输入a=[123;456;789]显示a=123456789输入x=[-1.2sqrt(3)(1+2+3)/5*4]显示x=-1.20001.73214.8000规则:矩阵元素放在方括号中,元素之间以空格或逗号分隔,不同行以分号分隔,语句结尾用回车或逗号将显示结果1矩阵赋值•基本赋值矩阵ones(m,n),zero(m,n),magic(n),eye(n),rand(m,n),round(A)如:输入f1=ones(3,2)输入f3=magic(3)显示f1=11显示f3=816113571149
3、2输入f2=zero(2,3)输入f4=eye(2)显示f2=000显示f4=10000012矩阵的基本运算•矩阵算术运算书写格式与普通算术相同,包括加、减、乘、除。可用括号规定运算的优先级。•Matlab将矩阵加、减、乘的程序编为内部函数,只要用+,-*做运算符号就包含阶数检查和执行运算的全过程–两相加矩阵有一个是标量时,Matlab承认算式有效,自动把标量扩展为同阶等元素矩阵如:键入X=[-101];Y=X-1得Y=-2-10•矩阵除法–矩阵求逆inv(A),如果det(A)等于或很接近零,Matlab会提示出错–“左除”与“右除”,左乘或右乘矩阵的
4、逆,A或/A2矩阵的基本运算•幂运算^A*A*A=A^5•转置´理论学习中,A的转置表示为AT,在Matlab中用“´”表示3行列式与方程组求解•相关命令U=rref(A),对矩阵A进行初等行变换,矩阵U为A的最简梯矩阵det(A),计算矩阵A的行列式rank(A),计算矩阵A的秩B(:,i)=b,把向量b赋给矩阵B的第i行A(i,j),引用矩阵A中第i行j列的元素[A,eye(5)],创建5×10矩阵,前5列为A,后5列为单位矩阵symsx,定义x为符号变量3行列式与方程组求解•逆矩阵各种求法:clearA=[-7,-2,-6,4,6;1,3,-6,
5、3,11;3,-11,9,5,-2;-3,0,-2,9,-3;7,30,-18,11,4];%1.命令法:An1=inv(A)%2.幂运算法:An2=A^-1%3.右除法:An3=eye(5)/A%eye(5)为5阶单位矩阵%4.左除法:An4=Aeye(5)%5.初等行变换法:B=rref([A,eye(5)]);%对矩阵[A,I]进行初等行变换%B为矩阵A的最简行阶梯矩阵if(rank(B(:,1:5))==5)%判断最简行阶梯矩阵B的前5列是否为单位阵An5=B(:,6:10)%取出矩阵的后5列,并显示elsedisp('A不可逆');end思考
6、:如何用求逆阵或初等变换法解方程组?3行列式与方程组求解解方程:32112322x10513227x132%求解符号行列式方程clear%清除各种变量symsx%定义x为符号变量A=[3,2,1,1;3,2,2-x^2,1;5,1,3,2;7-x^2,1,3,2]D=det(A)%计算含符号变量矩阵A的行列式Df=factor(D)%对行列式D进行因式分解%从因式分解的结果,可以看出方程的解X=solve(D)%求方程“D=0”的解4向量组的线性相关性及方程组的通解•相关命令[R,s]=rref(A),把矩阵A的最简梯矩阵赋值给R;s是一个行向量,
7、它的元素由R的首非零元所在列号构成null(A,‘r’),齐次线性方程组Ax=0的基础解系x0=Ab,非齐次线性方程组Ax=b的一个特解x0length(s),计算s向量的维数end,矩阵的最大下标,最后一行或最后一列find(s),向量s中非零元素的下标sub(A,k,n),将A中所有符号变量k用数值n代替4向量组的线性相关性及方程组的通解求非齐次线性方程组的通解2x4xx4x16x2123453x6x2x6x23x7123453x6x4x6x19x2312345x2x5x2x19x4312
8、3454向量组的线性相关性及方程组的通解%求齐次线性方程组的通解clearA=[