После Jama
В моем коде определены матрицы:
P: 3*3 Matrix
I: 3*3 identity Matrix
K: 3*2 Matrix
H: 2*3 Matrix
Q: 3*3 Matrix
Ниже приведен мой фрагмент кода:
private Matrix getP() {
P= (I.minus(K.times(H))).times(Q);
Log.d("csv", "P is calculated");
return P;
}
Во время выполнения кода на первой итерации он работает, т.е. , P is calculated
печатается в Logcat. Однако это происходит только один раз, и приложение останавливается. Ниже приводится ошибка:
java.lang.IllegalArgumentException: Matrix inner dimensions must agree.
Если внутреннее измерение Matrix было ошибкой, то почему оно выполняется для первой итерации? Я получил некоторую информацию о внутреннем измерении в этой ссылке. Однако я не мог найти решение. Когда уравнение проверяется вручную, размер матрицы совпадает. Что-то не так с моим подходом ??
Спасибо.