Я пытаюсь разделить матрицы в Фортране (f90).X = R / Z => X [6x1], R [6x6] и Z [6x1] - матрицы.
Обычно в Matlab вы можете написать это уравнение и легко, но в Fortran немного по-другому, потому что Fortran имеетнет никаких свойств деления, так что мне нужно взять обратную матрицу Z (X = R * Z ^ -1).
Проблема в форме матрицы, потому что здесь матрица Z (6x1), а не квадрат, поэтому я не могу принять обратное.Есть ли готовая функция для деления и как справиться, если обратная матрица не квадратная?
program main
implicit none
real, dimension(6,1) :: X
real, dimension(6,6) :: R
real, dimension(6,1) :: Z
real, dimension(6,1) :: Z_inv
!X=R/Z
call mat_inverse(Z) ! Please ignore inverse part
Z_inv=Z ! Mat_inverse function is already defined in math
! Kernel Library but I just call that mat_inverse
! Because I call mat_inverse subroutine
! X=R*Z^-1
X=Matmul(R,Z_inv)
end program main