我有一个多项式,其系数取决于两个参数x
和y
以及它们的非线性幂。我扫x
找到y
多项式的根,但对于 x 的大多数值,函数roots
给出"输入到 ROOTS 不得包含 NaN 或 Inf"的错误,当我看到多项式的系数与 sym2poly
函数时,它们是inf
的。
不能改变多项式,因为它是从问题中获得的,我该怎么办?
出于实际目的,我可以建议以下解决方法:
将所有 inf 值替换为一个非常大的正数,将所有 -inf 值替换为一个大的正数。
对于 NaN,你可以做类似的事情,但我认为 NaN 通常不用于替换 Matlab 中的大数字。如果你不关心这些点,我想你可以用0代替它们。