code: public static double[][] minusTimesEquals(final double[][] m1, final double[][] m2, final double s2) {
      assert getRowDimensionality(m1) == getRowDimensionality(m2) && getColumnDimensionality(m1) == getColumnDimensionality(m2) : ERR_MATRIX_DIMENSIONS;
      for(int i = 0; i < m1.length; i++) {
        final double[] row1 = m1[i], row2 = m2[i];
        for(int j = 0; j < row1.length; j++) {
          row1[j] -= s2 * row2[j];
        }
      }
      return m1;
    }
docs: Component-wise matrix operation: m1 = m1 - m2 * s2,
  overwriting the existing matrix m1.
  
  @param m1 Input matrix
  @param m2 another matrix
  @param s2 Scalar
  @return m1 = m1 - s2 * m2, overwriting m1