小编Nob*_*ody的帖子

QR分解Fortran错误

我有QR分解方法的问题.我使用dgeqrf子例程进行分解,但编译器中没有错误,但之后会出现问题.我没有发现错误在哪里.另一个问题是,A = Q*R =>如果A矩阵为零,则分解为零或失去秩.

program decomposition

!CONTAINS
!subroutine Qrdecomposition(A_mat, R)
real,dimension(2,2)   :: A_mat    !real,dimension(2,2),intent(inout)   
:: A_mat
real,dimension(2,2)   :: R        !real,dimension(2,2),intent(out)     
:: R
real,dimension(2,2)                  :: A
integer                              :: M,N,LDA,LWORK,INFO
real,allocatable, dimension(:,:)     :: TAU
real,allocatable, dimension(:,:)     :: WORK
external   dgeqrf
M=2
N=2
LDA=2
LWORK=2
INFO=0
A_mat(1,1)=4
A_mat(1,2)=1
A_mat(2,1)=3
A_mat(2,2)=1
A=A_mat

call dgeqrf(M,N,A,TAU,WORK,LWORK,INFO)
R=A
print *,R,WORK,LWORK

!end subroutine Qrdecomposition
end program decomposition
Run Code Online (Sandbox Code Playgroud)

fortran transformation visual-studio qr-decomposition plato

2
推荐指数
1
解决办法
122
查看次数