特征多项式 矩阵A的特征多项式 C(s)=det(sl-A)=5n +c,sn-1+.+Cn-15+Cn 格式:C=poly(A 例:>>A=[162313;511108;97612;414151 poly(A)%直接求取 ans 1.000000000000000e+000-3.399999999999999e+001 7.999999999999986e+0012.719999999999999c+003 2.819840539024018e-012 A=sm(A);poly(A)%运用符号工具箱 ans X^4-34*x^3-80*x^2+2720*x
• 特征多项式 格式: C=poly(A) 例:>> A=[16 2 3 13; 5 11 10 8; 9 7 6 12; 4 14 15 1]; >> poly(A) %直接求取 ans = 1.000000000000000e+000 -3.399999999999999e+001 -7.999999999999986e+001 2.719999999999999e+003 -2.819840539024018e-012 >> A=sym(A); poly(A) %运用符号工具箱 ans = x^4-34*x^3-80*x^2+2720*x
符号多项式与数值多项式的转换 向量P=[a1,a2,…,an+1] 向量转换成多项式表示 格式: f=poly2sym(p)n f-poly2sym(P, X) 多项式符号表达式转换成向量: 格式:P=sym2poly(f)
• 符号多项式与数值多项式的转换 格式: f=poly2sym(P) 或 f=poly2sym(P,x) 格式: P=sym2poly(f)
例:用不同形式表示f=s5+24+353+42+5+6。 转换成符号型的多项式: P=[123456,%先由系数按降幂顺序排列表示多 项式 >>f=poy2sym(Pv)%以ⅴ为算子表示多项式 f V^5+2*y^4+3*V^3+4*V^2+5*v+6 转换成数值形式的多项式 > P=sym2poly(f) 123456
• 例: >> P=[1 2 3 4 5 6]; % 先由系数按降幂顺序排列表示多 项式 >> f=poly2sym(P,'v') % 以 v 为算子表示多项式 f = v^5+2*v^4+3*v^3+4*v^2+5*v+6 >> P=sym2poly(f) P = 1 2 3 4 5 6
·矩阵的逆矩阵 AC=CA=I 其中A为n×n非奇异方阵,则C=A-1 格式:C=inv(A) 例:求取 Hilbert矩阵的逆矩阵 > format long; H=hilb(4) Hl=inV(H) H 1.0e+003* 0.01600000000000-0.119999999999990.23999999999998-0.13999999999999 0.119999999999991.19999999999990-2699999999999761.67999999999984 0.23999999999998-2.699999999999766.47999999999940-4.19999999999961 -0.139999999999991.67999999999984-4.199999999999612.79999999999974
• 矩阵的逆矩阵 格式: C=inv(A) 例: >> format long; H=hilb(4); H1=inv(H) H1 = 1.0e+003 * 0.01600000000000 -0.11999999999999 0.23999999999998 -0.13999999999999 -0.11999999999999 1.19999999999990 -2.69999999999976 1.67999999999984 0.23999999999998 -2.69999999999976 6.47999999999940 -4.19999999999961 -0.13999999999999 1.67999999999984 -4.19999999999961 2.79999999999974
检验: >>H*H ans 1.000000000000010.00000000000023-0.000000000000450.00000000000023 0.000000000000011.00000000000011-0.000000000000110.00000000000011 0.00000000000001 0 1.00000000000011 0.000000000000000.00000000000011-0.000000000000111.00000000000011 计算误差范数: > norm(H inv(H)-eye(size()) ans 6.235798190375727e-013 用 invhilb()函数直接产生逆矩阵: > H2=invhilb(4); norm(H*H2-eye(size()) ans 5.684341886080802e-014
检验: >> H*H1 ans = 1.00000000000001 0.00000000000023 -0.00000000000045 0.00000000000023 0.00000000000001 1.00000000000011 -0.00000000000011 0.00000000000011 0.00000000000001 0 1.00000000000011 0 0.00000000000000 0.00000000000011 -0.00000000000011 1.00000000000011 计算误差范数: >> norm(H*inv(H)-eye(size(H))) ans = 6.235798190375727e-013 >> H2=invhilb(4); norm(H*H2-eye(size(H))) ans = 5.684341886080802e-014