【发布时间】:2015-06-23 21:15:40
【问题描述】:
Stan 提供的功能
vector eigenvalues_sym(matrix A)
matrix eigenvectors_sym(matrix A)
用于获取对称矩阵 A 的特征值和特征向量,但是如果您的矩阵是非对称的呢?你还能得到特征值和特征向量吗?另外,有没有办法测试我是否得到正确的特征向量?如何测试 Stan 程序的各个部分?
【问题讨论】:
Stan 提供的功能
vector eigenvalues_sym(matrix A)
matrix eigenvectors_sym(matrix A)
用于获取对称矩阵 A 的特征值和特征向量,但是如果您的矩阵是非对称的呢?你还能得到特征值和特征向量吗?另外,有没有办法测试我是否得到正确的特征向量?如何测试 Stan 程序的各个部分?
【问题讨论】:
Stan 仅提供对称情况,因为我们无法保证答案不复杂。
虽然可以将复合体编码为一对实数并开始在 Stan 中实现其中的一些,但这将是一个巨大的痛苦。 恐怕我们只提供对称情况,因为我们不能保证答案是真实的,也不支持 .其他任何东西都必须在 C++ 或 Stan 中从头开始实现并包含在内。
Ben Goodrich 在 C++ 中提出了一种解决方法,该解决方法需要从源代码重新编译 Stan,以获取已知会产生真实特征分解的非对称矩阵,但这几乎不是语言内的解决方案,也不是我们真正建议人们做的事情,因为它需要每次更新 Stan 时都会更新。
【讨论】: