簡體   English   中英

c++ 的對稱類數組數據結構

[英]Symmetric array-like data structure for c++

我正在做一個模擬,我必須計算許多平均值,我認為使用 boost::accumulators 是個好主意。 問題是我要平均的數量之一是對稱矩陣,其對角線是事先已知的。 所以如果 i < j,我只需要計算 Q[i][j] 的平均值。

起初我的印象是我可以使用

using namespace boost::accumulators;
using namespace boost::numeric::ublas;
typedef accumulator_set<double, stats<tag::mean> > accumulator;

symmetric_matrix<accumulator, lower> foo;  // a symmetric matrix of accumulators

持有我的蓄電池。 但后來我突然想到,這種 symmetric_matrix 結構可能足以僅保存數值(它們定義了算術運算)或以某種方式針對此類數據進行了優化。 這是正確的嗎?

如果 boost 中的 symmetric_matrix 不夠用,我需要一個數據結構,它可以保存沒有對角線的對稱矩陣的下三角形,並且它必須適合保存累加器並具有類似矩陣的良好語法。 這是否可以從某個圖書館獲得? 如果沒有,這種結構是否有一個簡單的實現?

試試Boost uBLAS 三角矩陣 這是一個例子

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM