/** * Dot product of matrix and vector: return M dot v * @param v dot product with this vector * @return MAVector result: new vector * @exception IllegalArgumentException if ncols != v.getSize(). */ public MAVector dot(MAVector v) { if (ncols != v.getNelems()) throw new IllegalArgumentException("MAMatrix.dot "+ncols+" != "+ v.getNelems()); ArrayDouble.D1 result = new ArrayDouble.D1(nrows); Index imr = result.getIndex(); for (int i=0; i<nrows; i++) { double sum = 0.0; for (int k=0; k<ncols; k++) sum += getDouble(i, k) * v.getDouble(k); result.setDouble( imr.set(i), sum); } return new MAVector( result); }
/** * Dot product of matrix and vector: return M dot v * @param v dot product with this vector * @return MAVector result: new vector * @exception IllegalArgumentException if ncols != v.getSize(). */ public MAVector dot(MAVector v) { if (ncols != v.getNelems()) throw new IllegalArgumentException("MAMatrix.dot "+ncols+" != "+ v.getNelems()); ArrayDouble.D1 result = new ArrayDouble.D1(nrows); Index imr = result.getIndex(); for (int i=0; i<nrows; i++) { double sum = 0.0; for (int k=0; k<ncols; k++) sum += getDouble(i, k) * v.getDouble(k); result.setDouble( imr.set(i), sum); } return new MAVector( result); }
/** * Dot product of matrix and vector: return M dot v * @param v dot product with this vector * @return MAVector result: new vector * @exception IllegalArgumentException if ncols != v.getSize(). */ public MAVector dot(MAVector v) { if (ncols != v.getNelems()) throw new IllegalArgumentException("MAMatrix.dot "+ncols+" != "+ v.getNelems()); ArrayDouble.D1 result = new ArrayDouble.D1(nrows); Index imr = result.getIndex(); for (int i=0; i<nrows; i++) { double sum = 0.0; for (int k=0; k<ncols; k++) sum += getDouble(i, k) * v.getDouble(k); result.setDouble( imr.set(i), sum); } return new MAVector( result); }
Double data = m.getDataArray().getDouble(0); ArrayDouble.D1 tmpArray = new ArrayDouble.D1(1); tmpArray.setDouble(0, data); writer.write( writer.findVariable(m.getName()) , origin, tmpArray );
data.setDouble(0, 0);
data.setDouble(0, 0);
data.setDouble(0, 0);