Как я могу умножить данное RealVector
на RealMatrix
? Я не могу найти метод «умножения» для обоих классов, только preMultiply
, но, похоже, он не работает:
// point to translate
final RealVector p = MatrixUtils.createRealVector(new double[] {
3, 4, 5, 1
});
// translation matrix (6, 7, 8)
final RealMatrix m = MatrixUtils.createRealMatrix(new double[][] {
{1, 0, 0, 6},
{0, 1, 0, 7},
{0, 0, 1, 8},
{0, 0, 0, 1}
});
// p2 = m x p
final RealVector p2 = m.preMultiply(p);
// prints {3; 4; 5; 87}
// expected {9; 11; 13; 1}
System.out.println(p2);
Пожалуйста, сравните фактический результат с ожидаемым.
Есть ли также способ умножения Vector3D
на 4x4 RealMatrix
, где компонент w отбрасывается? (Ищу не кастомную реализацию, а уже существующий метод в библиотеке).