2
我正在研究計算矢量總能量的函數。計算總能量
從研究和另一個系統(在MatLab中完成),方程組取出每個矢量求和的abs值。矢量的總和的值是「0」對於每個向量,這裏是代碼:
vector<double> Audio::filter(vector<iniMatrix>&blocks, double sumThres, double ZeroThres)
{
vector<double> totalEnergy;
for(unsigned i=0; (i < blocks.size()); i++)
{
totalEnergy.push_back(abs(this->energy(blocks[i])));
}
for(unsigned i=0; (i < totalEnergy.size()); i++)
{
cout << totalEnergy[i] << endl;
}
}
double Audio::energy(vector<double>&blocks)
{
return accumulate(blocks.begin(), blocks.end(), 0);
}
有96塊,每塊含有600個值。值是雙打:
0.0078125,0.0234375,0.015625
0.0078125,0.0234375,......,
任何人有任何想法,爲什麼我得到的每一個 「0」 值?
又是什麼'累加()'做什麼? – SingerOfTheFall
@SingerOfTheFall累積每個傳入的塊的值?例如。塊[0] ...........(累計)然後塊[1] ......等 – Phorce
對不起,由於某種原因,我認爲這是你自己的功能 – SingerOfTheFall