首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ojalgo:奇异矩阵的处理

Ojalgo:奇异矩阵的处理
EN

Stack Overflow用户
提问于 2016-05-21 09:01:49
回答 2查看 346关注 0票数 3

我正在使用ojalgo来解决java中的a (NxN) Ax =b系统。因为有机会A将是一个奇异矩阵,我希望我的代码知道这一点。有办法吗?(文档说明,如果问题不合格且invert()方法不抛出异常,则invert()方法返回一个可能的解决方案)。

任何帮助都将不胜感激。提前谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-05-21 15:32:02

听起来你是直接在BasicMatrix上使用解决方法和倒置方法。

改用LU分解代替。在分解矩阵之后,但在尝试解决之前,您可以调用:

lu.isSquareAndNotSingular();

票数 2
EN

Stack Overflow用户

发布于 2022-04-01 22:43:34

要解决使用LU分解的问题,请尝试这样的方法。

代码语言:javascript
复制
        MatrixStore M = ...equations
        MatrixStore v = ...rhs
        LU<Double> lu = LU.PRIMITIVE.make(M);
        boolean decompose = lu.decompose(M);
        MatrixStore solution;
        if(lu.isSolvable()){
            solution = lu.getSolution(v);
        // and/or check that solution is good enough
            double norm = M.multiply(solution).subtract(v).norm();
        }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37360900

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档