poly.m

来自「用MATLAB的脚本语言M语言编写的」· M 代码 · 共 19 行

M
19
字号
function c=poly(A)
[nr,nc]=size(A); 
if nc==nr
   R0=eye(nc); R=R0; c=[1 zeros(1,nc)]; 
   for k=1:nc 
      c(k+1)=-1/k*trace(A*R);  
      R=A*R+c(k+1)*R0;
   end
elseif (nr==1 | nc==1)
   A=A(isfinite(A)); n=length(A);
   c=[1,zeros(1,n)];
   for j=1:n
      c(2:(j+1))=c(2:(j+1))-A(j).*c(1:j);
   end
else   
   error(['Argument must be a ',...
      'vector or a square matrix.'])
end

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?