Vir*_*nie 15 java matrix polynomial-math complex-numbers
我正在尝试找到一种方法来计算Java中具有复系数的多项式的根(即,相当于在MATLAB中用根()轻松完成的事情).
我准备重新编码构建伴随矩阵的根查找算法,然后使用广义特征值分解来查找根,但为此我需要一个处理复值矩阵运算的库.
我浏览了一段时间,似乎没有任何说服力,我认为这很奇怪.然后,我想问你:
你知道(稳定的)Java库在COMPLEX系数定义的多项式上执行根查找吗?
你知道一个(稳定的)Java库在COMPLEX值矩阵上执行evd,svd,inverse等吗?
注意:我已经看过JAMA(不处理复杂),Michael Thomas Flanagan的Java Scientific Library(不再可用),colt(似乎没有处理复杂),高效的Java Matrix Library(也没有复杂),DDogleg Numerics (不处理具有复系数的多项式),JScience(不清楚evd是否可用)和Apache的通用数学(如果它们允许复杂矩阵则不清楚,如果是,则可以使用evd).
Durand -Kerner 方法也适用于复系数,并且不依赖于矩阵计算。
实现起来非常简单,你可以在谷歌上搜索一个实现(Stackoverflow 禁止我链接我找到的那个)或者制作一个你自己的实现。您可以将jscience库用于复杂的数据类型,而不是算法本身。
编辑:没有看到你也需要 evd,别介意我提到 jscience 作为进行复杂矩阵数学的选项。