35 #include "qrm_common.h"
67 integer,
intent(in) :: cperm(:)
68 integer,
allocatable :: parent(:)
70 integer,
allocatable :: ancestor(:), prev_col(:)
71 integer :: iidx, jidx,
i, j, k
74 character(len=*),
parameter :: name=
'qrm_elim_tree'
82 __qrm_check_ret(name,
'qrm_aalloc',9999)
91 do iidx = graph%jptr(j), graph%jptr(j+1)-1
94 if(k .ne. 0) call
add_node(ancestor, parent, k, j)
101 __qrm_check_ret(name,
'qrm_adealloc',9999)
108 if(err_act .eq. qrm_abort_)
then
119 integer,
allocatable :: parent(:)
120 integer,
allocatable :: ancestor(:)
Generic interface for the qrm_adealloc_i, qrm_adealloc_2i, qrm_adealloc_s, qrm_adealloc_2s, qrm_adealloc_3s, qrm_adealloc_d, qrm_adealloc_2d, qrm_adealloc_3d, qrm_adealloc_c, qrm_adealloc_2c, qrm_adealloc_3c, qrm_adealloc_z, qrm_adealloc_2z, qrm_adealloc_3z, routines.
subroutine qrm_err_act_restore(err_act)
Restores the value of the qrm_err_act variable.
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_aalloc_i, qrm_aalloc_2i, qrm_aalloc_s, qrm_aalloc_2s, qrm_aalloc_3s, qrm_aalloc_d, qrm_aalloc_2d, qrm_aalloc_3d, qrm_aalloc_c, qrm_aalloc_2c, qrm_aalloc_3c, qrm_aalloc_z, qrm_aalloc_2z, qrm_aalloc_3z, routines.
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...
Generic interface for the qrm_arealloc_i qrm_arealloc_s qrm_arealloc_d qrm_arealloc_c qrm_arealloc_z...
This module implements the memory handling routines. Pretty mucch allocations and deallocations...
subroutine _qrm_elim_tree(graph, cperm, parent)
This subroutine builds the elimination tree for A'A.
subroutine add_node(ancestor, parent, k, j)
subroutine qrm_err_act_save(err_act)
Saves a copy of the qrm_err_act variable.