为何调用residue函数时部分场景会报输出参数过多错误?
residue函数报错原因
MATLAB 内置的 residue 函数最多仅支持3个输出参数,三个参数的含义依次为:
- 留数数组
- 极点数组
- 多项式直接项(分子阶数小于分母阶数时返回空数组)
你第一段调用代码 [r, p, k] = residue([1, -14],[1,-1,-2] ); 仅声明了3个输出参数,符合函数的参数定义,因此可以正常运行。
你第二段调用代码 [a,b,c,d] = residue([2 -16 40 -42], [1 -11 39 -45]); 声明了4个输出参数,超出了 residue 函数支持的最大输出参数数量,因此触发「Too many output arguments」报错。
如果需要获取部分分式展开的全部结果,仅需要接收前3个输出参数即可,无需声明第四个参数。
内容的提问来源于stack exchange,提问作者ETHAN MILLER
相关产品推荐
相关产品推荐

