The description for times(double[][] v1, double[] v2) say "Product of a matrix and a vector (array) according to the rules of linear algebra. Number of columns in v1 must equal number of elements in v2." but i alwasy get the failure message the the colums of row 0 are 1 instead of 6 (n). So the problem is:
times(double[][] v1, double[] v2) {
// the first check is true
checkLength(v2, v1[0].length);
// in this line v2 is converted from an double[n] vector to an matrix double[n][1] and then a call of times(double[][] v1, double[][] v2)
// this causes an error because this call of times needs two matrixes of same size but now v1 = [n][n] and v2 = [n][1]
return getColumnCopy(times(v1, columnVector(v2)), 0);
}
Please have a look...Thanks