[英]Octave EIG class in C++, algorithm
I'm using EIG
class of Octave in my C++ code. 我在C ++代码中使用Octave的EIG
类。 Actually, it works good. 实际上,它运作良好。 The only minor issue which I have is that it determines algorithm automatically based on the argument list of EIG
constructor. 我唯一的小问题是它根据EIG
构造函数的参数列表自动确定算法。 I was wondering if there is a way to determine algorithm for the EIG
class. 我想知道是否有一种方法可以确定EIG
类的算法。 I noticed that there is an optional argument called info
, I looked into C++ source code (on the following link) to see if it relates to algorithm but I couldn't figure it out. 我注意到有一个名为info
的可选参数,我查看了C ++源代码(在下面的链接中)以查看它是否与算法有关,但我无法弄清楚。
http://octave.sourceforge.net/doxygen/html/d6/d42/EIG_8cc_source.html http://octave.sourceforge.net/doxygen/html/d6/d42/EIG_8cc_source.html
I'm using Octave 3.6.1 with Visual Studio 2008. 我在Visual Studio 2008中使用Octave 3.6.1。
I researched on topic. 我研究了话题。 Apparently Octave has no option to determine the algorithm of eig
command. 显然,Octave无法确定eig
命令的算法。 But MATLAB has two options of 'chol'
algorithm and 'qz'
algorithm for badly-conditioned matrices. 但是对于条件不佳的矩阵,MATLAB提供了'chol'
算法和'qz'
算法两个选项。
If you want to calculate the Eigen values & vectors of ill-conditioned matrices in C++, you can implement DGGEV or DGGEVX routines of LAPACK. 如果要在C ++中计算病态矩阵的特征值和向量,则可以实现LAPACK的DGGEV或DGGEVX例程。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.