35 #include "qrm_common.h" 57 _qrm_data,
intent(inout) :: b(:,:)
58 _qrm_data,
intent(inout) :: x(:,:)
62 integer :: i, j, row, col
66 front => qrm_mat%fdata%front_list(1)
75 do i=front%anrows, 1, -1
76 row =qrm_mat%adata%rperm(i)
77 do j=front%aiptr(i+1)-1, front%aiptr(i)+1,-1
79 b(row,:) = b(row,:) - front%aval(j)*x(col,:)
81 x(qrm_mat%adata%cperm(i),:) = b(row,:)/front%aval(front%aiptr(i))
87 col = qrm_mat%adata%rperm(j)
88 x(col,:) = b(qrm_mat%adata%cperm(j),:)/_conjg(front%aval(front%aiptr(j)))
89 do i=front%aiptr(j)+1, front%aiptr(j+1)-1
91 b(row,:) = b(row,:)-_conjg(front%aval(i))*x(col,:)
subroutine _qrm_solve_sing_front(qrm_mat, b, x, trans)
This function handles the front containing the singletons during the solve for R or R'...
This type defines the data structure used to store a matrix.
This module contains the definition of the basic sparse matrix type and of the associated methods...
This module contains the definition of all the data related to the factorization phase.
This module contains various string handling routines.
This type defines a data structure containing all the data related to a front.