MATLAB如何使用compan函数创建友矩阵
【语法说明】
A=compan(u):函数计算多项式向量u的友矩阵。A的第一行元素为-u(2:n)/u(1),即u的第二到第n个元素对第一个元素做归一化再取相反数。矩阵A有一个性质,其特征值是向量u对应多项式的根。
【功能介绍】生成友矩阵。
【实例】计算多项式(x−10)(x−20)的友矩阵。
>> syms x
>> y = (x-10)*(x-20); % 多项式(x-10)(x-20)的符号表示
>> y = expand(y) % 多项式展开
y =
x^2 - 30*x + 200
>> y = sym2poly(y) % 转换为系数向量
y =
1 -30 200
>> co = compan(y) % 计算系数向量的友矩阵
co =
30 -200
1 0
>> eig(co) % 计算友矩阵的特征值
ans =
20
10
【实例讲解】expand函数将符号多项式展开,sym2poly函数将符号多项式转换为 compan 函数所需的多项式向量,以降幂形式排列。eig函数用于求矩阵的特征值。多项式(x−10)(x−20)的根为20、10,与友矩阵的特征值相符。