private void rightMultByVector(MatrixBlock vector,MatrixBlock result) throws DMLRuntimeException {
  result.allocateDenseBlock();
  for (  ColGroup grp : _colGroups)   if (grp instanceof ColGroupUncompressed)   grp.rightMultByVector(vector,result,0,result.getNumRows());
  for (  ColGroup grp : _colGroups)   if (!(grp instanceof ColGroupUncompressed))   grp.rightMultByVector(vector,result,0,result.getNumRows());
  result.recomputeNonZeros();
}

private void rightMultByVector ( MatrixBlock vector , MatrixBlock result ) throws DMLRuntimeException { result . allocateDenseBlock ( ) ; for ( ColGroup grp : _colGroups ) if ( grp instanceof ColGroupUncompressed ) grp . rightMultByVector ( vector , result , 0 , result . getNumRows ( ) ) ; for ( ColGroup grp : _colGroups ) if ( ! ( grp instanceof ColGroupUncompressed ) ) grp . rightMultByVector ( vector , result , 0 , result . getNumRows ( ) ) ; result . recomputeNonZeros ( ) ; }
multiply this matrix block by a column vector on the right .
