2017-09-09 84 views
-3

我執行下面的代碼在谷歌測試徵SVD在谷歌測試

TEST(LinearALgebra, SVD) { 
    Eigen::Matrix3d m; 

    m << -0.0793311, 0.999997, -1.17221e-07, 
     1.74, 0.00249557, 0.000445095, 
     9.88131e-324, 0.000191222, -0.000284459; 

    Eigen::Matrix3d m_inv = m.inverse(); 

    //or 

    auto svd = m.jacobiSvd(Eigen::ComputeFullU | Eigen::ComputeFullV); 
} 

它未能BinaryFunctors.h在scalar_product_op :: result_type的(線86) 在simpe主要應用相同的操作失敗怪, python numpy或opencv在沒有失敗的情況下工作正確。

+2

_It failed_,你認爲這就是你應該告訴的一切? –

+1

我不會在您發佈的代碼中看到錯誤。請提供[MCVE](https://stackoverflow.com/help/mcve) –

+0

對不起。一些解釋:相同的代碼在簡單的控制檯主應用程序和谷歌測試中運行。在應用程序中一切正常。但在谷歌測試相同的代碼返回這個錯誤。 – Mike

回答

0

所以,問題是低於正常數字9.88131e-324。 它導致浮點異常。 將其更改爲零解決問題。