cerrst.f
来自「famous linear algebra library (LAPACK) p」· F 代码 · 共 763 行 · 第 1/3 页
F
763 行
CALL CSTEQR( 'V', 2, D, E, Z, 1, RW, INFO )
CALL CHKXER( 'CSTEQR', INFOT, NOUT, LERR, OK )
NT = NT + 3
*
* CSTEDC
*
SRNAMT = 'CSTEDC'
INFOT = 1
CALL CSTEDC( '/', 0, D, E, Z, 1, W, 1, RW, 1, IW, 1, INFO )
CALL CHKXER( 'CSTEDC', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL CSTEDC( 'N', -1, D, E, Z, 1, W, 1, RW, 1, IW, 1, INFO )
CALL CHKXER( 'CSTEDC', INFOT, NOUT, LERR, OK )
INFOT = 6
CALL CSTEDC( 'V', 2, D, E, Z, 1, W, 4, RW, 23, IW, 28, INFO )
CALL CHKXER( 'CSTEDC', INFOT, NOUT, LERR, OK )
INFOT = 8
CALL CSTEDC( 'N', 2, D, E, Z, 1, W, 0, RW, 1, IW, 1, INFO )
CALL CHKXER( 'CSTEDC', INFOT, NOUT, LERR, OK )
INFOT = 8
CALL CSTEDC( 'V', 2, D, E, Z, 2, W, 0, RW, 23, IW, 28, INFO )
CALL CHKXER( 'CSTEDC', INFOT, NOUT, LERR, OK )
INFOT = 10
CALL CSTEDC( 'N', 2, D, E, Z, 1, W, 1, RW, 0, IW, 1, INFO )
CALL CHKXER( 'CSTEDC', INFOT, NOUT, LERR, OK )
INFOT = 10
CALL CSTEDC( 'I', 2, D, E, Z, 2, W, 1, RW, 1, IW, 12, INFO )
CALL CHKXER( 'CSTEDC', INFOT, NOUT, LERR, OK )
INFOT = 10
CALL CSTEDC( 'V', 2, D, E, Z, 2, W, 4, RW, 1, IW, 28, INFO )
CALL CHKXER( 'CSTEDC', INFOT, NOUT, LERR, OK )
INFOT = 12
CALL CSTEDC( 'N', 2, D, E, Z, 1, W, 1, RW, 1, IW, 0, INFO )
CALL CHKXER( 'CSTEDC', INFOT, NOUT, LERR, OK )
INFOT = 12
CALL CSTEDC( 'I', 2, D, E, Z, 2, W, 1, RW, 23, IW, 0, INFO )
CALL CHKXER( 'CSTEDC', INFOT, NOUT, LERR, OK )
INFOT = 12
CALL CSTEDC( 'V', 2, D, E, Z, 2, W, 4, RW, 23, IW, 0, INFO )
CALL CHKXER( 'CSTEDC', INFOT, NOUT, LERR, OK )
NT = NT + 11
*
* CHEEVD
*
SRNAMT = 'CHEEVD'
INFOT = 1
CALL CHEEVD( '/', 'U', 0, A, 1, X, W, 1, RW, 1, IW, 1, INFO )
CALL CHKXER( 'CHEEVD', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL CHEEVD( 'N', '/', 0, A, 1, X, W, 1, RW, 1, IW, 1, INFO )
CALL CHKXER( 'CHEEVD', INFOT, NOUT, LERR, OK )
INFOT = 3
CALL CHEEVD( 'N', 'U', -1, A, 1, X, W, 1, RW, 1, IW, 1, INFO )
CALL CHKXER( 'CHEEVD', INFOT, NOUT, LERR, OK )
INFOT = 5
CALL CHEEVD( 'N', 'U', 2, A, 1, X, W, 3, RW, 2, IW, 1, INFO )
CALL CHKXER( 'CHEEVD', INFOT, NOUT, LERR, OK )
INFOT = 8
CALL CHEEVD( 'N', 'U', 1, A, 1, X, W, 0, RW, 1, IW, 1, INFO )
CALL CHKXER( 'CHEEVD', INFOT, NOUT, LERR, OK )
INFOT = 8
CALL CHEEVD( 'N', 'U', 2, A, 2, X, W, 2, RW, 2, IW, 1, INFO )
CALL CHKXER( 'CHEEVD', INFOT, NOUT, LERR, OK )
INFOT = 8
CALL CHEEVD( 'V', 'U', 2, A, 2, X, W, 3, RW, 25, IW, 12, INFO )
CALL CHKXER( 'CHEEVD', INFOT, NOUT, LERR, OK )
INFOT = 10
CALL CHEEVD( 'N', 'U', 1, A, 1, X, W, 1, RW, 0, IW, 1, INFO )
CALL CHKXER( 'CHEEVD', INFOT, NOUT, LERR, OK )
INFOT = 10
CALL CHEEVD( 'N', 'U', 2, A, 2, X, W, 3, RW, 1, IW, 1, INFO )
CALL CHKXER( 'CHEEVD', INFOT, NOUT, LERR, OK )
INFOT = 10
CALL CHEEVD( 'V', 'U', 2, A, 2, X, W, 8, RW, 18, IW, 12, INFO )
CALL CHKXER( 'CHEEVD', INFOT, NOUT, LERR, OK )
INFOT = 12
CALL CHEEVD( 'N', 'U', 1, A, 1, X, W, 1, RW, 1, IW, 0, INFO )
CALL CHKXER( 'CHEEVD', INFOT, NOUT, LERR, OK )
INFOT = 12
CALL CHEEVD( 'V', 'U', 2, A, 2, X, W, 8, RW, 25, IW, 11, INFO )
CALL CHKXER( 'CHEEVD', INFOT, NOUT, LERR, OK )
NT = NT + 12
*
* CHEEV
*
SRNAMT = 'CHEEV '
INFOT = 1
CALL CHEEV( '/', 'U', 0, A, 1, X, W, 1, RW, INFO )
CALL CHKXER( 'CHEEV ', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL CHEEV( 'N', '/', 0, A, 1, X, W, 1, RW, INFO )
CALL CHKXER( 'CHEEV ', INFOT, NOUT, LERR, OK )
INFOT = 3
CALL CHEEV( 'N', 'U', -1, A, 1, X, W, 1, RW, INFO )
CALL CHKXER( 'CHEEV ', INFOT, NOUT, LERR, OK )
INFOT = 5
CALL CHEEV( 'N', 'U', 2, A, 1, X, W, 3, RW, INFO )
CALL CHKXER( 'CHEEV ', INFOT, NOUT, LERR, OK )
INFOT = 8
CALL CHEEV( 'N', 'U', 2, A, 2, X, W, 2, RW, INFO )
CALL CHKXER( 'CHEEV ', INFOT, NOUT, LERR, OK )
NT = NT + 5
*
* CHEEVX
*
SRNAMT = 'CHEEVX'
INFOT = 1
CALL CHEEVX( '/', 'A', 'U', 0, A, 1, 0.0, 0.0, 0, 0, 0.0, M, X,
$ Z, 1, W, 1, RW, IW, I3, INFO )
CALL CHKXER( 'CHEEVX', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL CHEEVX( 'V', '/', 'U', 0, A, 1, 0.0, 1.0, 1, 0, 0.0, M, X,
$ Z, 1, W, 1, RW, IW, I3, INFO )
CALL CHKXER( 'CHEEVX', INFOT, NOUT, LERR, OK )
INFOT = 3
CALL CHEEVX( 'V', 'A', '/', 0, A, 1, 0.0, 0.0, 0, 0, 0.0, M, X,
$ Z, 1, W, 1, RW, IW, I3, INFO )
INFOT = 4
CALL CHEEVX( 'V', 'A', 'U', -1, A, 1, 0.0, 0.0, 0, 0, 0.0, M,
$ X, Z, 1, W, 1, RW, IW, I3, INFO )
CALL CHKXER( 'CHEEVX', INFOT, NOUT, LERR, OK )
INFOT = 6
CALL CHEEVX( 'V', 'A', 'U', 2, A, 1, 0.0, 0.0, 0, 0, 0.0, M, X,
$ Z, 2, W, 3, RW, IW, I3, INFO )
CALL CHKXER( 'CHEEVX', INFOT, NOUT, LERR, OK )
INFOT = 8
CALL CHEEVX( 'V', 'V', 'U', 1, A, 1, 0.0, 0.0, 0, 0, 0.0, M, X,
$ Z, 1, W, 1, RW, IW, I3, INFO )
CALL CHKXER( 'CHEEVX', INFOT, NOUT, LERR, OK )
INFOT = 9
CALL CHEEVX( 'V', 'I', 'U', 1, A, 1, 0.0, 0.0, 0, 0, 0.0, M, X,
$ Z, 1, W, 1, RW, IW, I3, INFO )
CALL CHKXER( 'CHEEVX', INFOT, NOUT, LERR, OK )
INFOT = 10
CALL CHEEVX( 'V', 'I', 'U', 2, A, 2, 0.0, 0.0, 2, 1, 0.0, M, X,
$ Z, 2, W, 3, RW, IW, I3, INFO )
CALL CHKXER( 'CHEEVX', INFOT, NOUT, LERR, OK )
INFOT = 15
CALL CHEEVX( 'V', 'A', 'U', 2, A, 2, 0.0, 0.0, 0, 0, 0.0, M, X,
$ Z, 1, W, 3, RW, IW, I3, INFO )
CALL CHKXER( 'CHEEVX', INFOT, NOUT, LERR, OK )
INFOT = 17
CALL CHEEVX( 'V', 'A', 'U', 2, A, 2, 0.0, 0.0, 0, 0, 0.0, M, X,
$ Z, 2, W, 2, RW, IW, I1, INFO )
CALL CHKXER( 'CHEEVX', INFOT, NOUT, LERR, OK )
NT = NT + 10
*
* CHEEVR
*
SRNAMT = 'CHEEVR'
N = 1
INFOT = 1
CALL CHEEVR( '/', 'A', 'U', 0, A, 1, 0.0, 0.0, 1, 1, 0.0, M, R,
$ Z, 1, IW, Q, 2*N, RW, 24*N, IW( 2*N+1 ), 10*N,
$ INFO )
CALL CHKXER( 'CHEEVR', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL CHEEVR( 'V', '/', 'U', 0, A, 1, 0.0, 0.0, 1, 1, 0.0, M, R,
$ Z, 1, IW, Q, 2*N, RW, 24*N, IW( 2*N+1 ), 10*N,
$ INFO )
CALL CHKXER( 'CHEEVR', INFOT, NOUT, LERR, OK )
INFOT = 3
CALL CHEEVR( 'V', 'A', '/', -1, A, 1, 0.0, 0.0, 1, 1, 0.0, M,
$ R, Z, 1, IW, Q, 2*N, RW, 24*N, IW( 2*N+1 ), 10*N,
$ INFO )
CALL CHKXER( 'CHEEVR', INFOT, NOUT, LERR, OK )
INFOT = 4
CALL CHEEVR( 'V', 'A', 'U', -1, A, 1, 0.0, 0.0, 1, 1, 0.0, M,
$ R, Z, 1, IW, Q, 2*N, RW, 24*N, IW( 2*N+1 ), 10*N,
$ INFO )
CALL CHKXER( 'CHEEVR', INFOT, NOUT, LERR, OK )
INFOT = 6
CALL CHEEVR( 'V', 'A', 'U', 2, A, 1, 0.0, 0.0, 1, 1, 0.0, M, R,
$ Z, 1, IW, Q, 2*N, RW, 24*N, IW( 2*N+1 ), 10*N,
$ INFO )
CALL CHKXER( 'CHEEVR', INFOT, NOUT, LERR, OK )
INFOT = 8
CALL CHEEVR( 'V', 'V', 'U', 1, A, 1, 0.0E0, 0.0E0, 1, 1, 0.0,
$ M, R, Z, 1, IW, Q, 2*N, RW, 24*N, IW( 2*N+1 ),
$ 10*N, INFO )
CALL CHKXER( 'CHEEVR', INFOT, NOUT, LERR, OK )
INFOT = 9
CALL CHEEVR( 'V', 'I', 'U', 1, A, 1, 0.0E0, 0.0E0, 0, 1, 0.0,
$ M, R, Z, 1, IW, Q, 2*N, RW, 24*N, IW( 2*N+1 ),
$ 10*N, INFO )
CALL CHKXER( 'CHEEVR', INFOT, NOUT, LERR, OK )
INFOT = 10
*
CALL CHEEVR( 'V', 'I', 'U', 2, A, 2, 0.0E0, 0.0E0, 2, 1, 0.0,
$ M, R, Z, 1, IW, Q, 2*N, RW, 24*N, IW( 2*N+1 ),
$ 10*N, INFO )
CALL CHKXER( 'CHEEVR', INFOT, NOUT, LERR, OK )
INFOT = 15
CALL CHEEVR( 'V', 'I', 'U', 1, A, 1, 0.0E0, 0.0E0, 1, 1, 0.0,
$ M, R, Z, 0, IW, Q, 2*N, RW, 24*N, IW( 2*N+1 ),
$ 10*N, INFO )
CALL CHKXER( 'CHEEVR', INFOT, NOUT, LERR, OK )
INFOT = 18
CALL CHEEVR( 'V', 'I', 'U', 1, A, 1, 0.0E0, 0.0E0, 1, 1, 0.0,
$ M, R, Z, 1, IW, Q, 2*N-1, RW, 24*N, IW( 2*N+1 ),
$ 10*N, INFO )
CALL CHKXER( 'CHEEVR', INFOT, NOUT, LERR, OK )
INFOT = 20
CALL CHEEVR( 'V', 'I', 'U', 1, A, 1, 0.0E0, 0.0E0, 1, 1, 0.0,
$ M, R, Z, 1, IW, Q, 2*N, RW, 24*N-1, IW( 2*N-1 ),
$ 10*N, INFO )
CALL CHKXER( 'CHEEVR', INFOT, NOUT, LERR, OK )
INFOT = 22
CALL CHEEVR( 'V', 'I', 'U', 1, A, 1, 0.0E0, 0.0E0, 1, 1, 0.0,
$ M, R, Z, 1, IW, Q, 2*N, RW, 24*N, IW, 10*N-1,
$ INFO )
CALL CHKXER( 'CHEEVR', INFOT, NOUT, LERR, OK )
NT = NT + 12
*
* CHPEVD
*
SRNAMT = 'CHPEVD'
INFOT = 1
CALL CHPEVD( '/', 'U', 0, A, X, Z, 1, W, 1, RW, 1, IW, 1,
$ INFO )
CALL CHKXER( 'CHPEVD', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL CHPEVD( 'N', '/', 0, A, X, Z, 1, W, 1, RW, 1, IW, 1,
$ INFO )
CALL CHKXER( 'CHPEVD', INFOT, NOUT, LERR, OK )
INFOT = 3
CALL CHPEVD( 'N', 'U', -1, A, X, Z, 1, W, 1, RW, 1, IW, 1,
$ INFO )
CALL CHKXER( 'CHPEVD', INFOT, NOUT, LERR, OK )
INFOT = 7
CALL CHPEVD( 'V', 'U', 2, A, X, Z, 1, W, 4, RW, 25, IW, 12,
$ INFO )
CALL CHKXER( 'CHPEVD', INFOT, NOUT, LERR, OK )
INFOT = 9
CALL CHPEVD( 'N', 'U', 1, A, X, Z, 1, W, 0, RW, 1, IW, 1,
$ INFO )
CALL CHKXER( 'CHPEVD', INFOT, NOUT, LERR, OK )
INFOT = 9
CALL CHPEVD( 'N', 'U', 2, A, X, Z, 2, W, 1, RW, 2, IW, 1,
$ INFO )
CALL CHKXER( 'CHPEVD', INFOT, NOUT, LERR, OK )
INFOT = 9
CALL CHPEVD( 'V', 'U', 2, A, X, Z, 2, W, 2, RW, 25, IW, 12,
$ INFO )
CALL CHKXER( 'CHPEVD', INFOT, NOUT, LERR, OK )
INFOT = 11
CALL CHPEVD( 'N', 'U', 1, A, X, Z, 1, W, 1, RW, 0, IW, 1,
$ INFO )
CALL CHKXER( 'CHPEVD', INFOT, NOUT, LERR, OK )
INFOT = 11
CALL CHPEVD( 'N', 'U', 2, A, X, Z, 2, W, 2, RW, 1, IW, 1,
$ INFO )
CALL CHKXER( 'CHPEVD', INFOT, NOUT, LERR, OK )
INFOT = 11
CALL CHPEVD( 'V', 'U', 2, A, X, Z, 2, W, 4, RW, 18, IW, 12,
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?