35 #include "qrm_common.h"
59 _qrm_data,
intent(inout) :: b(:,:)
60 character(len=*),
intent(in) :: transp
62 integer :: nb, rhs_nthreads, nrhs,
i, keeph
65 character(len=*),
parameter :: name=
'qrm_apply'
70 if(.not. qrm_mat%fdata%ok)
then
75 call
qrm_get(qrm_mat,
'qrm_keeph', keeph)
82 call
qrm_get(qrm_mat,
'qrm_rhsnb', nb)
83 call
qrm_get(qrm_mat,
'qrm_rhsnthreads', rhs_nthreads)
88 call omp_set_nested(.true.)
97 __qrm_check_ret(name,
'qrm_apply_qt',9999)
105 __qrm_check_ret(name,
'qrm_apply_q',9999)
109 call omp_set_nested(.false.)
117 if(err_act .eq. qrm_abort_)
then
145 _qrm_data,
intent(inout) :: b(:)
146 character(len=*),
intent(in) :: transp
148 _qrm_data,
pointer :: pnt(:,:)
152 character(len=*),
parameter :: name=
'qrm_apply1d'
157 if( qrm_mat%fdata%done .eq. 0)
then
162 call
qrm_get(qrm_mat,
'qrm_keeph', keeph)
175 __qrm_check_ret(name,
'qrm_apply_qt',9999)
178 __qrm_check_ret(name,
'qrm_apply_q',9999)
186 if(err_act .eq. qrm_abort_)
then
subroutine _qrm_remap_pnt(arr1d, pnt2d, n)
This function makes a 2D pointer point to a 1D array.
This module contains the interfaces of all non-typed routines.
subroutine qrm_err_act_restore(err_act)
Restores the value of the qrm_err_act variable.
Generic interface for the ::_qrm_apply_qt routine.
subroutine _qrm_apply2d(qrm_mat, transp, b)
This function applies Q or Q^T to a set of vectors.
This module contains generic interfaces for a number of auxiliary tools.
subroutine qrm_err_check()
This subroutine checks the errors stack. If something is found all the entries in the stack are poppe...
Generic interface for the ::_qrm_apply_q routine.
subroutine _qrm_apply1d(qrm_mat, transp, b)
This function applies Q or Q^T to a single vector.
This module contains all the interfaces for the typed routines in the solve phase.
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...
Generif interface for the ::_qrm_pgeti, ::_qrm_pgetr and.
This module contains various string handling routines.
subroutine qrm_err_push(code, sub, ied, aed)
This subroutine pushes an error on top of the stack.
subroutine qrm_err_act_save(err_act)
Saves a copy of the qrm_err_act variable.