17 : nrows_(0), ncolumns_(0), currentStartRow_(0)
36 rows_.resize( nrows );
39 for (
unsigned int i = 0; i < nrows; ++i ) {
40 rows_[i].resize( ncolumns, 0.0 );
48 return rows_[index][column];
63 for (
unsigned int i = 0; i < input.size(); ++i )
69 unsigned int row,
unsigned int startColumn )
const
74 unsigned int i2 = input.size()/2;
75 unsigned int istart = (startColumn >= i2) ? 0 : i2-startColumn;
76 unsigned int colstart = (startColumn <= i2) ? 0 : startColumn - i2;
77 unsigned int iend = (sv.size()-startColumn > i2 ) ? input.size() :
78 i2 - startColumn + sv.size();
82 for (
unsigned int i = istart, j = 0; i < iend; ++i, ++j )
83 ret += sv[j + colstart] * input[i];
100 const vector< double >& input,
unsigned int row)
const
105 for (
unsigned int i = 0; i <
ncolumns_; ++i ) {
113 rows_[index].assign(
rows_[index].size(), 0.0 );
vector< SparseVector > rows_
void resize(unsigned int numRows, unsigned int numColumns)
double dotProduct(const vector< double > &input, unsigned int row, unsigned int startColumn) const
void sumIntoRow(const vector< double > &input, unsigned int row)
unsigned int currentStartRow_
void zeroOutRow(unsigned int row)
void sumIntoEntry(double input, unsigned int row, unsigned int column)
void correl(vector< double > &ret, const vector< double > &input, unsigned int row) const
RollingMatrix & operator=(const RollingMatrix &other)
double get(unsigned int row, unsigned int column) const
vector< double > SparseVector