Eigen::MatrixXd
とEigen::VectorXd
をベクトルと行列で置き換える最も簡単な方法は、long double
の要素ですか?Eigen :: MatrixXd typedefの置換
コード内のすべての基本浮動小数点変数は、タイプlong double
です。また、私は行列やベクトルを使うたびに、次のtypedefを使います。
typedef Eigen::VectorXd Vec;
typedef Eigen::MatrixXd Mat;
これらのtypedefをどのように切り替えるのが最適ですか?もし私がそれらをそのまま残すとどうなりますか?
もっと重要な質問は本当に 'long double'が必要ですか?たいていのプロセッサは 'double'算術を高速に実行できるように構築されているため、計算が大幅に遅くなる可能性があります。また、コンパイラが 'long double'を無視し、' double'を代わりに使用するかもしれません。 [Wikipediaの記事](https://en.wikipedia.org/wiki/Long_double)を読んで、もう一度考えてみてください。ありがとう。 –