LAPACK  3.4.1
LAPACK: Linear Algebra PACKage
zerrps.f
Go to the documentation of this file.
00001 *> \brief \b ZERRPS
00002 *
00003 *  =========== DOCUMENTATION ===========
00004 *
00005 * Online html documentation available at 
00006 *            http://www.netlib.org/lapack/explore-html/ 
00007 *
00008 *  Definition:
00009 *  ===========
00010 *
00011 *       SUBROUTINE ZERRPS( PATH, NUNIT )
00012 * 
00013 *       .. Scalar Arguments ..
00014 *       INTEGER            NUNIT
00015 *       CHARACTER*3        PATH
00016 *       ..
00017 *  
00018 *
00019 *> \par Purpose:
00020 *  =============
00021 *>
00022 *> \verbatim
00023 *>
00024 *> ZERRPS tests the error exits for the COMPLEX routines
00025 *> for ZPSTRF.
00026 *> \endverbatim
00027 *
00028 *  Arguments:
00029 *  ==========
00030 *
00031 *> \param[in] PATH
00032 *> \verbatim
00033 *>          PATH is CHARACTER*3
00034 *>          The LAPACK path name for the routines to be tested.
00035 *> \endverbatim
00036 *>
00037 *> \param[in] NUNIT
00038 *> \verbatim
00039 *>          NUNIT is INTEGER
00040 *>          The unit number for output.
00041 *> \endverbatim
00042 *
00043 *  Authors:
00044 *  ========
00045 *
00046 *> \author Univ. of Tennessee 
00047 *> \author Univ. of California Berkeley 
00048 *> \author Univ. of Colorado Denver 
00049 *> \author NAG Ltd. 
00050 *
00051 *> \date November 2011
00052 *
00053 *> \ingroup complex16_lin
00054 *
00055 *  =====================================================================
00056       SUBROUTINE ZERRPS( PATH, NUNIT )
00057 *
00058 *  -- LAPACK test routine (version 3.4.0) --
00059 *  -- LAPACK is a software package provided by Univ. of Tennessee,    --
00060 *  -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
00061 *     November 2011
00062 *
00063 *     .. Scalar Arguments ..
00064       INTEGER            NUNIT
00065       CHARACTER*3        PATH
00066 *     ..
00067 *
00068 *  =====================================================================
00069 *
00070 *     .. Parameters ..
00071       INTEGER            NMAX
00072       PARAMETER          ( NMAX = 4 )
00073 *     ..
00074 *     .. Local Scalars ..
00075       INTEGER            I, INFO, J, RANK
00076 *     ..
00077 *     .. Local Arrays ..
00078       COMPLEX*16         A( NMAX, NMAX )
00079       DOUBLE PRECISION   RWORK( 2*NMAX )
00080       INTEGER            PIV( NMAX )
00081 *     ..
00082 *     .. External Subroutines ..
00083       EXTERNAL           ALAESM, CHKXER, ZPSTF2, ZPSTRF
00084 *     ..
00085 *     .. Scalars in Common ..
00086       INTEGER            INFOT, NOUT
00087       LOGICAL            LERR, OK
00088       CHARACTER*32       SRNAMT
00089 *     ..
00090 *     .. Common blocks ..
00091       COMMON             / INFOC / INFOT, NOUT, OK, LERR
00092       COMMON             / SRNAMC / SRNAMT
00093 *     ..
00094 *     .. Intrinsic Functions ..
00095       INTRINSIC          DBLE
00096 *     ..
00097 *     .. Executable Statements ..
00098 *
00099       NOUT = NUNIT
00100       WRITE( NOUT, FMT = * )
00101 *
00102 *     Set the variables to innocuous values.
00103 *
00104       DO 110 J = 1, NMAX
00105          DO 100 I = 1, NMAX
00106             A( I, J ) = 1.D0 / DBLE( I+J )
00107 *
00108   100    CONTINUE
00109          PIV( J ) = J
00110          RWORK( J ) = 0.D0
00111          RWORK( NMAX+J ) = 0.D0
00112 *
00113   110 CONTINUE
00114       OK = .TRUE.
00115 *
00116 *
00117 *        Test error exits of the routines that use the Cholesky
00118 *        decomposition of an Hermitian positive semidefinite matrix.
00119 *
00120 *        ZPSTRF
00121 *
00122       SRNAMT = 'ZPSTRF'
00123       INFOT = 1
00124       CALL ZPSTRF( '/', 0, A, 1, PIV, RANK, -1.D0, RWORK, INFO )
00125       CALL CHKXER( 'ZPSTRF', INFOT, NOUT, LERR, OK )
00126       INFOT = 2
00127       CALL ZPSTRF( 'U', -1, A, 1, PIV, RANK, -1.D0, RWORK, INFO )
00128       CALL CHKXER( 'ZPSTRF', INFOT, NOUT, LERR, OK )
00129       INFOT = 4
00130       CALL ZPSTRF( 'U', 2, A, 1, PIV, RANK, -1.D0, RWORK, INFO )
00131       CALL CHKXER( 'ZPSTRF', INFOT, NOUT, LERR, OK )
00132 *
00133 *        ZPSTF2
00134 *
00135       SRNAMT = 'ZPSTF2'
00136       INFOT = 1
00137       CALL ZPSTF2( '/', 0, A, 1, PIV, RANK, -1.D0, RWORK, INFO )
00138       CALL CHKXER( 'ZPSTF2', INFOT, NOUT, LERR, OK )
00139       INFOT = 2
00140       CALL ZPSTF2( 'U', -1, A, 1, PIV, RANK, -1.D0, RWORK, INFO )
00141       CALL CHKXER( 'ZPSTF2', INFOT, NOUT, LERR, OK )
00142       INFOT = 4
00143       CALL ZPSTF2( 'U', 2, A, 1, PIV, RANK, -1.D0, RWORK, INFO )
00144       CALL CHKXER( 'ZPSTF2', INFOT, NOUT, LERR, OK )
00145 *
00146 *
00147 *     Print a summary line.
00148 *
00149       CALL ALAESM( PATH, OK, NOUT )
00150 *
00151       RETURN
00152 *
00153 *     End of ZERRPS
00154 *
00155       END
 All Files Functions