LAPACK  3.5.0
LAPACK: Linear Algebra PACKage
derrqp.f File Reference

Go to the source code of this file.

Functions/Subroutines

subroutine derrqp (PATH, NUNIT)
 DERRQP More...
 

Function/Subroutine Documentation

subroutine derrqp ( character*3  PATH,
integer  NUNIT 
)

DERRQP

Purpose:
 DERRQP tests the error exits for DGEQPF and DGEQP3.
Parameters
[in]PATH
          PATH is CHARACTER*3
          The LAPACK path name for the routines to be tested.
[in]NUNIT
          NUNIT is INTEGER
          The unit number for output.
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Date
November 2011

Definition at line 56 of file derrqp.f.

56 *
57 * -- LAPACK test routine (version 3.4.0) --
58 * -- LAPACK is a software package provided by Univ. of Tennessee, --
59 * -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
60 * November 2011
61 *
62 * .. Scalar Arguments ..
63  CHARACTER*3 path
64  INTEGER nunit
65 * ..
66 *
67 * =====================================================================
68 *
69 * .. Parameters ..
70  INTEGER nmax
71  parameter( nmax = 3 )
72 * ..
73 * .. Local Scalars ..
74  CHARACTER*2 c2
75  INTEGER info, lw
76 * ..
77 * .. Local Arrays ..
78  INTEGER ip( nmax )
79  DOUBLE PRECISION a( nmax, nmax ), tau( nmax ), w( 3*nmax+1 )
80 * ..
81 * .. External Functions ..
82  LOGICAL lsamen
83  EXTERNAL lsamen
84 * ..
85 * .. External Subroutines ..
86  EXTERNAL alaesm, chkxer, dgeqp3, dgeqpf
87 * ..
88 * .. Scalars in Common ..
89  LOGICAL lerr, ok
90  CHARACTER*32 srnamt
91  INTEGER infot, nout
92 * ..
93 * .. Common blocks ..
94  COMMON / infoc / infot, nout, ok, lerr
95  COMMON / srnamc / srnamt
96 * ..
97 * .. Executable Statements ..
98 *
99  nout = nunit
100  WRITE( nout, fmt = * )
101  c2 = path( 2: 3 )
102  lw = 3*nmax + 1
103  a( 1, 1 ) = 1.0d+0
104  a( 1, 2 ) = 2.0d+0
105  a( 2, 2 ) = 3.0d+0
106  a( 2, 1 ) = 4.0d+0
107  ok = .true.
108 *
109  IF( lsamen( 2, c2, 'QP' ) ) THEN
110 *
111 * Test error exits for QR factorization with pivoting
112 *
113 * DGEQPF
114 *
115  srnamt = 'DGEQPF'
116  infot = 1
117  CALL dgeqpf( -1, 0, a, 1, ip, tau, w, info )
118  CALL chkxer( 'DGEQPF', infot, nout, lerr, ok )
119  infot = 2
120  CALL dgeqpf( 0, -1, a, 1, ip, tau, w, info )
121  CALL chkxer( 'DGEQPF', infot, nout, lerr, ok )
122  infot = 4
123  CALL dgeqpf( 2, 0, a, 1, ip, tau, w, info )
124  CALL chkxer( 'DGEQPF', infot, nout, lerr, ok )
125 *
126 * DGEQP3
127 *
128  srnamt = 'DGEQP3'
129  infot = 1
130  CALL dgeqp3( -1, 0, a, 1, ip, tau, w, lw, info )
131  CALL chkxer( 'DGEQP3', infot, nout, lerr, ok )
132  infot = 2
133  CALL dgeqp3( 1, -1, a, 1, ip, tau, w, lw, info )
134  CALL chkxer( 'DGEQP3', infot, nout, lerr, ok )
135  infot = 4
136  CALL dgeqp3( 2, 3, a, 1, ip, tau, w, lw, info )
137  CALL chkxer( 'DGEQP3', infot, nout, lerr, ok )
138  infot = 8
139  CALL dgeqp3( 2, 2, a, 2, ip, tau, w, lw-10, info )
140  CALL chkxer( 'DGEQP3', infot, nout, lerr, ok )
141  END IF
142 *
143 * Print a summary line.
144 *
145  CALL alaesm( path, ok, nout )
146 *
147  RETURN
148 *
149 * End of DERRQP
150 *
subroutine chkxer(SRNAMT, INFOT, NOUT, LERR, OK)
Definition: cblat2.f:3199
logical function lsamen(N, CA, CB)
LSAMEN
Definition: lsamen.f:76
subroutine dgeqpf(M, N, A, LDA, JPVT, TAU, WORK, INFO)
DGEQPF
Definition: dgeqpf.f:144
subroutine alaesm(PATH, OK, NOUT)
ALAESM
Definition: alaesm.f:65
subroutine dgeqp3(M, N, A, LDA, JPVT, TAU, WORK, LWORK, INFO)
DGEQP3
Definition: dgeqp3.f:153

Here is the call graph for this function:

Here is the caller graph for this function: