armadillo库c++求解不一致的线性方程
armadillo library c++ solve the linear equation that is inconsistent
我正在使用armadillo库,我试图使用此代码来求解线性方程组,我输入了一个应该不一致的情况,但它输出了方程的解
我试试这个
x+y=3,
4 x + 4 y = 10
这是代码
mat A(2,2);
vec B(2);
A << 1 << 1 << endr
<< 4 << 4 << endr;
B << 3 << endr
<< 10 << endr;
vec Ans;
Ans = solve(A,B);
cout << Ans << endl;
从文件中说,如果没有找到解决方案,它将抛出并驱逐
如果未找到解决方案:
X=solve(A,B)重置X并抛出std::runtime_error异常solve(X,A,B)重置X并返回设置为false的bool(未引发异常)
那么,当我解决不一致时,我应该怎么做呢?它应该抛出异常或返回false或其他任何正确的方法是什么
提前感谢
默认情况下,armadillo试图找到奇异矩阵A
:的近似解
warning: solve(): system seems singular; attempting approx solution
1.2647
1.2647
您应该使用solve_opts::no_approx
选项禁用此行为:
Ans = solve(A,B,solve_opts::no_approx);
请参阅solve()的文档。
相关文章:
- 大于65535的C++数组[size]引发不一致的溢出
- 在 C++(和 C)中进行类型转换时明显不一致
- 填充上编译器生成的复制构造函数之间的不一致
- 犰狳的 print() 方法和 cout 在从 Rcpp 调用时顺序不一致
- CreateDIBSection为同一图像返回不一致的位图位值
- 在 Qml 中从 QSqlTableModel 中删除单行时视图不一致
- 模板参数推导不一致
- 声明中不一致的no是否违反ODR?
- 如何删除分支因子不一致的树,最大为 30,40
- 从 C++ 函数与 Python 函数返回的不一致值用于偏斜正态分布
- 从 C 字符串构造 std::string 与从另一个 std::string 构造 std::string 不一致
- 这种比较是否不一致(或者存在其他问题)?
- 以下可变参数模板行为是否不一致?
- 如何修复我的链表读数不一致的问题?
- 在C++17中,为什么类模板和函数模板的指针类型推导明显不一致
- void 函数中的指针参数返回不一致的值
- 如何查找导致结果不一致的代码
- 跨平台 mySQL 与字符集不一致
- C++:不一致的 std::p ow( 类型 ) 定义
- armadillo库c++求解不一致的线性方程