Man page - pstrf(3)
Packages contains this manual
- hptrd(3)
- potri(3)
- xerbla_array(3)
- ggsvd_driver_grp(3)
- hfrk(3)
- getsqr_comp_grp(3)
- laed6(3)
- gtrfs(3)
- lasdq(3)
- gglse(3)
- la_xisnan_la_isnan(3)
- unmr2(3)
- hetrs_aa(3)
- tpttr(3)
- gerz_comp_grp(3)
- potrf(3)
- hegv_driver(3)
- laqps(3)
- ggqr_comp_grp(3)
- ilalc(3)
- ung2r(3)
- heevd(3)
- pstf2(3)
- lacn2(3)
- ptrfs(3)
- ungrq(3)
- gelqf(3)
- ppsv_comp(3)
- blas2_full(3)
- gemlqt(3)
- unml2(3)
- tplqt(3)
- tpcon(3)
- getf2(3)
- ggbak(3)
- bdsvd_driver(3)
- lamch(3)
- gelq(3)
- gebal(3)
- laqr1(3)
- ptsvx(3)
- lahr2(3)
- larscl2(3)
- geqrt(3)
- larfb(3)
- gtsv_comp(3)
- gesvd_aux(3)
- hbevx_2stage(3)
- hbgvx(3)
- tprfs(3)
- params_grp(3)
- lahef(3)
- laqr_group(3)
- unmqr(3)
- tgsy2(3)
- tfsv_comp(3)
- ggls_driver_grp(3)
- geev(3)
- latrd(3)
- unbdb4(3)
- bbcsd(3)
- lange(3)
- gelq_comp3(3)
- gttrs(3)
- lasy2(3)
- hetf2_rook(3)
- gtsv(3)
- lalsd(3)
- lanhb(3)
- laqhb(3)
- hgeqz(3)
- gesvj(3)
- gsvj0(3)
- ungtsqr_row(3)
- gelq_comp1(3)
- gemmtr(3)
- pbequ(3)
- heev_driver(3)
- unhr_col(3)
- syconvf_rook(3)
- getc2(3)
- syconv(3)
- norm_grp(3)
- larrc(3)
- laqr4(3)
- posv_comp(3)
- geev_driver_grp(3)
- heev_comp(3)
- pfsv(3)
- trevc3(3)
- gesv_driver_grp(3)
- reflector_aux_grp(3)
- langt(3)
- lacrt(3)
- latdf(3)
- hetrs_aa_2stage(3)
- lamc1(3)
- hpev_driver(3)
- hegvd(3)
- pptri(3)
- geqrt3(3)
- gelqt3(3)
- lasd5(3)
- laeda(3)
- geqr(3)
- lamtsqr(3)
- heev(3)
- hpev_comp(3)
- larfg(3)
- blas2_grp(3)
- hesv_rook(3)
- laexc(3)
- hetrd(3)
- geesx(3)
- ppsvx(3)
- blas_top(3)
- gtts2(3)
- la_herpvgrw(3)
- hpevx(3)
- ggevx(3)
- lahqr(3)
- gelq_comp_grp(3)
- hesv_comp_v3(3)
- tplqt2(3)
- hpev(3)
- hbtrd(3)
- getrs(3)
- hecon_3(3)
- lasrt(3)
- lanhe(3)
- gesv_comp(3)
- gbequ(3)
- hetrf_rk(3)
- laqr3(3)
- heev_comp_grp(3)
- ungtsqr(3)
- ppcon(3)
- ggrq_comp_grp(3)
- larmm(3)
- ieeeck(3)
- geqrf(3)
- solve_aux_grp(3)
- herfs(3)
- posvx(3)
- posvxx(3)
- gges3(3)
- hbgvd(3)
- lantb(3)
- lasd_comp_grp(3)
- hpgvx(3)
- lapy2(3)
- lauu2(3)
- copy(3)
- getsqrhrt(3)
- stev_comp_grp(3)
- laev2(3)
- larfb_gett(3)
- trti2(3)
- laqz4(3)
- hegv_driver_grp(3)
- la_porfsx_extended(3)
- laruv(3)
- ggsvd_comp_grp(3)
- dot(3)
- gehd2(3)
- lanhf(3)
- hetri_rook(3)
- pfsv_comp(3)
- gbtrf(3)
- hpgst(3)
- getri(3)
- trevc(3)
- unmrz(3)
- hsein(3)
- lsamen(3)
- lasd6(3)
- trtri(3)
- ggglm(3)
- las2(3)
- latrs(3)
- lapll(3)
- gemlq(3)
- geqpf_comp_grp(3)
- stemr(3)
- rotm(3)
- disna(3)
- ggrqf(3)
- pptrf(3)
- lasd0(3)
- lals0(3)
- laqz2(3)
- hbev_driver2(3)
- geswlq_comp_grp(3)
- laqr0(3)
- trttp(3)
- stedc(3)
- lasq4(3)
- geev_comp_grp(3)
- ungbr(3)
- lanv2(3)
- hpsv(3)
- pprfs(3)
- gehrd(3)
- ppsv(3)
- lagtm(3)
- hpgv(3)
- trsv_comp(3)
- larfx(3)
- gesv_driver(3)
- gerfsx(3)
- la_geamv(3)
- laed9(3)
- tpqrt2(3)
- uncsd(3)
- gecs_comp_grp(3)
- bdsqr(3)
- hegv_comp_grp(3)
- labad(3)
- geqp3(3)
- gesvdq(3)
- tfttp(3)
- laln2(3)
- uncsd2by1(3)
- blas2_like_grp(3)
- latbs(3)
- hbgst(3)
- larrv(3)
- ilaenv2stage(3)
- bdsvdx(3)
- hegs2(3)
- lasq_comp_grp(3)
- hpr2(3)
- laqhe(3)
- larra(3)
- gemqrt(3)
- hbmv(3)
- hpsv_driver(3)
- lacp2(3)
- lapmt(3)
- gecon(3)
- unbdb5(3)
- la_gerpvgrw(3)
- tgex2(3)
- laqhp(3)
- tftri(3)
- getrf2(3)
- porfs(3)
- lartg(3)
- lagts(3)
- ggev_comp_grp(3)
- lasd3(3)
- geqr_comp2(3)
- laqz_group(3)
- pftri(3)
- hetri2x(3)
- lahef_aa(3)
- svd_driver_grp(3)
- gbsv_driver(3)
- hesv_comp_aasen2(3)
- laqtr(3)
- lag2(3)
- la_porcond(3)
- hbev(3)
- pbtrf(3)
- lascl(3)
- larr_comp_grp(3)
- hecon(3)
- pttrs(3)
- lasd8(3)
- lsame(3)
- unm2l(3)
- potrs(3)
- tptrs(3)
- lartv(3)
- trtrs(3)
- gsvj1(3)
- sum1(3)
- larrj(3)
- gbmv(3)
- posv(3)
- gghd3(3)
- geev_top(3)
- geqr_comp_grp(3)
- laset(3)
- hesvxx(3)
- posv_comp_grp(3)
- lahef_rk(3)
- lasd1(3)
- tprfb(3)
- potf2(3)
- laein(3)
- lamc4(3)
- stevd(3)
- gtsv_driver(3)
- gesvd_comp_grp(3)
- la_constants(3)
- gesvx(3)
- hseqr(3)
- launhr_col_getrfnp2(3)
- trcon(3)
- larre(3)
- gelsy(3)
- ptsv(3)
- lacon(3)
- laed_comp_grp(3)
- hpsvx(3)
- gemm(3)
- poequ(3)
- laesy(3)
- lagtf(3)
- trrfs(3)
- ggev3(3)
- pbstf(3)
- poequb(3)
- heevr(3)
- lanhp(3)
- unbdb3(3)
- tgsyl(3)
- lamc5(3)
- geqr2p(3)
- ungqr(3)
- laqz3(3)
- imax1(3)
- gels_top(3)
- hesv(3)
- gelqt(3)
- pfsv_driver(3)
- stegr(3)
- gerqf(3)
- laisnan(3)
- ilatrans(3)
- gbsv_comp(3)
- pbrfs(3)
- lascl2(3)
- larz(3)
- la_hercond(3)
- tgexc(3)
- ggesx(3)
- unbdb6(3)
- ungl2(3)
- laed_comp2(3)
- rscl(3)
- hegv(3)
- gelst(3)
- gbtrs(3)
- pftrf(3)
- langb(3)
- lantr(3)
- laqgb(3)
- ggsvp3(3)
- bdsdc(3)
- ladiv(3)
- laqge(3)
- iparmq(3)
- ggbal(3)
- hb2st_kernels(3)
- lartgs(3)
- lartgp(3)
- rot(3)
- ppequ(3)
- laed3(3)
- her(3)
- hptri(3)
- stevx(3)
- upgtr(3)
- lar2v(3)
- hbev_2stage(3)
- gejsv(3)
- ppsv_driver(3)
- unm22(3)
- gesvxx(3)
- laqz0(3)
- unmtr(3)
- laed5(3)
- tptri(3)
- laed0(3)
- heev_driver2(3)
- hpcon(3)
- lasd4(3)
- hetrf_aa(3)
- geqr_comp3(3)
- rot_aux_grp(3)
- aux_grp(3)
- laebz(3)
- trsyl3(3)
- gges(3)
- gesdd(3)
- trexc(3)
- ung2l(3)
- gesv(3)
- laed4(3)
- md__r_e_a_d_m_e(3)
- blas3_like_grp(3)
- laed1(3)
- larcm(3)
- hbevx(3)
- hesv_driver_grp(3)
- hetrs(3)
- hbevd_2stage(3)
- blas1_grp(3)
- laic1(3)
- geql_comp_grp(3)
- heev_2stage(3)
- hpmv(3)
- pbtf2(3)
- hetrf_aa_2stage(3)
- hbgv(3)
- pptrs(3)
- lapmr(3)
- tpqr_comp_grp(3)
- larfy(3)
- gedmd(3)
- lasr(3)
- hetrd_2stage(3)
- gerfs(3)
- ungtr(3)
- porfsx(3)
- tpmv(3)
- lasd_comp2(3)
- unmbr(3)
- tbtrs(3)
- hetd2(3)
- trsv_comp_grp(3)
- lapy3(3)
- ptts2(3)
- unmhr(3)
- hbev_driver(3)
- lalsa(3)
- tbsv_comp(3)
- hesv_comp_v1(3)
- geql2(3)
- sterf(3)
- larrd(3)
- larft(3)
- lagv2(3)
- gttrf(3)
- tpqrt(3)
- la_lin_berr(3)
- rotg(3)
- solve_top(3)
- lacgv(3)
- larrf(3)
- tbmv(3)
- trsyl(3)
- geequ(3)
- upmtr(3)
- hpgv_driver(3)
- tbsv(3)
- hesvx(3)
- latrz(3)
- tfttr(3)
- gesv_comp_grp(3)
- xerbla_grp(3)
- tpsv(3)
- blas3_grp(3)
- gesvd_driver(3)
- geqr_comp1(3)
- ggev_driver_grp(3)
- la_gbamv(3)
- tpmlqt(3)
- trttf(3)
- larzb(3)
- unmr3(3)
- hecon_rook(3)
- stebz(3)
- lantp(3)
- laqz1(3)
- hesv_rk(3)
- tbcon(3)
- xerbla(3)
- posv_mixed(3)
- latps(3)
- hesv_aa_driver(3)
- gemqr(3)
- larrr(3)
- gebrd(3)
- tgsna(3)
- la_gercond(3)
- gbsv(3)
- hesv_comp_grp(3)
- gesv_mixed(3)
- gghrd(3)
- gbrfs(3)
- tpmqrt(3)
- lasq3(3)
- tpsv_comp(3)
- largv(3)
- gelsd(3)
- pftrs(3)
- asum(3)
- launhr_col_getrfnp(3)
- hptrf(3)
- lacpy(3)
- gesc2(3)
- lasda(3)
- second(3)
- hprfs(3)
- hpsv_comp(3)
- lamrg(3)
- pbsv_comp(3)
- hegv_2stage(3)
- gerq2(3)
- lasdt(3)
- abs1(3)
- hbevd(3)
- hbev_comp(3)
- trsv(3)
- la_porpvgrw(3)
- la_gbrpvgrw(3)
- hbgv_driver(3)
- tgsja(3)
- gebd2(3)
- geqr2(3)
- unm2r(3)
- unmql(3)
- la_gbrfsx_extended(3)
- gelq_comp2(3)
- iparam2stage(3)
- ger(3)
- larf(3)
- ilaprec(3)
- labrd(3)
- unbdb1(3)
- unmlq(3)
- geequb(3)
- la_herfsx_extended(3)
- unbdb2(3)
- lapack_top(3)
- ptsv_driver(3)
- hetrs2(3)
- geqr_comp4(3)
- pbsv(3)
- posv_driver(3)
- steqr(3)
- gels(3)
- lar1v(3)
- hemv(3)
- la_transtype(3)
- hesv_aa(3)
- lacrm(3)
- stevr(3)
- hetf2_rk(3)
- blas2_banded(3)
- stein(3)
- unmrq(3)
- larrk(3)
- hetri2(3)
- hesv_aa_2stage(3)
- pttrf(3)
- gelss(3)
- pbsv_driver(3)
- lasq5(3)
- heevx_2stage(3)
- hetri(3)
- lasd2(3)
- laed2(3)
- pbcon(3)
- ptcon(3)
- laed7(3)
- gels_aux_grp(3)
- hpgvd(3)
- hetf2(3)
- tzrzf(3)
- hpr(3)
- unitary_top(3)
- latsqr(3)
- ungql(3)
- her2(3)
- hetri_3x(3)
- hetrd_hb2st(3)
- tgsen(3)
- ggsvd3(3)
- lasq6(3)
- set_grp(3)
- larfgp(3)
- gels_driver_grp(3)
- pbtrs(3)
- lamswlq(3)
- lanht(3)
- gbsvxx(3)
- tgevc(3)
- ilaenv(3)
- swap(3)
- lae2(3)
- iladiag(3)
- lasq2(3)
- la_heamv(3)
- blas_like_top(3)
- la_gerfsx_extended(3)
- hegst(3)
- tfsm(3)
- gesvd(3)
- ungr2(3)
- ggev(3)
- aux_top(3)
- blas2_packed(3)
- geqlf(3)
- hetrs_rook(3)
- gelq2(3)
- geqrfp(3)
- gbequb(3)
- stev(3)
- lauum(3)
- potrf2(3)
- lamc3(3)
- gbrfsx(3)
- gerq_comp_grp(3)
- pocon(3)
- tbrfs(3)
- heswapr(3)
- lamc2(3)
- hpevd(3)
- hesv_comp_aasen(3)
- scalar_grp(3)
- gemv(3)
- lasv2(3)
- lanhs(3)
- svd_top(3)
- gbsvx(3)
- gesvdx(3)
- tplq_comp_grp(3)
- hesv_driver(3)
- hesv_comp_v2(3)
- trsen(3)
- syconvf(3)
- lasd7(3)
- gbcon(3)
- unbdb(3)
- heev_driver_grp(3)
- ggqrf(3)
- heevx(3)
- gtsvx(3)
- lahef_rook(3)
- hetrf_rook(3)
- hetrf(3)
- trsna(3)
- gebak(3)
- larnv(3)
- ptsv_comp(3)
- laswlq(3)
- lags2(3)
- laed8(3)
- laswp(3)
- hptrs(3)
- unglq(3)
- la_wwaddw(3)
- getrf(3)
- gees(3)
- gbtf2(3)
- hegvx(3)
- latrs3(3)
- roundup_lwork(3)
- unghr(3)
- iamax(3)
- larzt(3)
- pteqr(3)
- ilaver(3)
- trmv(3)
- la_gbrcond(3)
- blas0_like_grp(3)
- nrm2(3)
- heev_top(3)
- gtcon(3)
- heevr_2stage(3)
- pstrf(3)
- rot_comp(3)
- laqr5(3)
- heevd_2stage(3)
- getsls(3)
- hetrd_he2hb(3)
- heequb(3)
- laqp2(3)
- axpy(3)
- blast_aux(3)
- rotmg(3)
- pbsvx(3)
- ilauplo(3)
- herfsx(3)
- laqr2(3)
- blas1_like_grp(3)
- lassq(3)
- larrb(3)
- stev_driver(3)
- geevx(3)
- tpttf(3)
- scal(3)
- laneg(3)
- posv_driver_grp(3)
- lasq1(3)
- hetrs_3(3)
- geqrt2(3)
- gbbrd(3)
- ilalr(3)
- hetri_3(3)
apt-get install liblapack-doc
Manual
pstrf
NAMESYNOPSIS
Functions
Detailed Description
Function Documentation
subroutine cpstrf (character uplo, integer n, complex, dimension( lda, * )a, integer lda, integer, dimension( n ) piv, integer rank, real tol,real, dimension( 2*n ) work, integer info)
subroutine dpstrf (character uplo, integer n, double precision, dimension(lda, * ) a, integer lda, integer, dimension( n ) piv, integer rank,double precision tol, double precision, dimension( 2*n ) work, integerinfo)
subroutine spstrf (character uplo, integer n, real, dimension( lda, * ) a,integer lda, integer, dimension( n ) piv, integer rank, real tol, real,dimension( 2*n ) work, integer info)
subroutine zpstrf (character uplo, integer n, complex*16, dimension( lda, *) a, integer lda, integer, dimension( n ) piv, integer rank, doubleprecision tol, double precision, dimension( 2*n ) work, integer info)
Author
NAME
pstrf - pstrf: triangular factor, with pivoting
SYNOPSIS
Functions
subroutine
cpstrf
(uplo, n, a, lda, piv, rank, tol, work, info)
CPSTRF
computes the Cholesky factorization with complete
pivoting of complex Hermitian positive semidefinite matrix.
subroutine
dpstrf
(uplo, n, a, lda, piv, rank, tol,
work, info)
DPSTRF
computes the Cholesky factorization with complete
pivoting of a real symmetric positive semidefinite matrix.
subroutine
spstrf
(uplo, n, a, lda, piv, rank, tol,
work, info)
SPSTRF
computes the Cholesky factorization with complete
pivoting of a real symmetric positive semidefinite matrix.
subroutine
zpstrf
(uplo, n, a, lda, piv, rank, tol,
work, info)
ZPSTRF
computes the Cholesky factorization with complete
pivoting of a complex Hermitian positive semidefinite
matrix.
Detailed Description
Function Documentation
subroutine cpstrf (character uplo, integer n, complex, dimension( lda, * )a, integer lda, integer, dimension( n ) piv, integer rank, real tol,real, dimension( 2*n ) work, integer info)
CPSTRF computes the Cholesky factorization with complete pivoting of complex Hermitian positive semidefinite matrix.
Purpose:
CPSTRF computes
the Cholesky factorization with complete
pivoting of a complex Hermitian positive semidefinite matrix
A.
The
factorization has the form
P**T * A * P = U**H * U , if UPLO = āUā,
P**T * A * P = L * L**H, if UPLO = āLā,
where U is an upper triangular matrix and L is lower
triangular, and
P is stored as vector PIV.
This algorithm
does not attempt to check that A is positive
semidefinite. This version of the algorithm calls level 3
BLAS.
Parameters
UPLO
UPLO is
CHARACTER*1
Specifies whether the upper or lower triangular part of the
symmetric matrix A is stored.
= āUā: Upper triangular
= āLā: Lower triangular
N
N is INTEGER
The order of the matrix A. N >= 0.
A
A is COMPLEX
array, dimension (LDA,N)
On entry, the symmetric matrix A. If UPLO = āUā,
the leading
n by n upper triangular part of A contains the upper
triangular part of the matrix A, and the strictly lower
triangular part of A is not referenced. If UPLO =
āLā, the
leading n by n lower triangular part of A contains the lower
triangular part of the matrix A, and the strictly upper
triangular part of A is not referenced.
On exit, if
INFO = 0, the factor U or L from the Cholesky
factorization as above.
LDA
LDA is INTEGER
The leading dimension of the array A. LDA >=
max(1,N).
PIV
PIV is INTEGER
array, dimension (N)
PIV is such that the nonzero entries are P( PIV(K), K ) =
1.
RANK
RANK is INTEGER
The rank of A given by the number of steps the algorithm
completed.
TOL
TOL is REAL
User defined tolerance. If TOL < 0, then N*U*MAX( A(K,K)
)
will be used. The algorithm terminates at the (K-1)st step
if the pivot <= TOL.
WORK
WORK is REAL
array, dimension (2*N)
Work space.
INFO
INFO is INTEGER
< 0: If INFO = -K, the K-th argument had an illegal
value,
= 0: algorithm completed successfully, and
> 0: the matrix A is either rank deficient with computed
rank
as returned in RANK, or is not positive semidefinite. See
Section 7 of LAPACK Working Note #161 for further
information.
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
subroutine dpstrf (character uplo, integer n, double precision, dimension(lda, * ) a, integer lda, integer, dimension( n ) piv, integer rank,double precision tol, double precision, dimension( 2*n ) work, integerinfo)
DPSTRF computes the Cholesky factorization with complete pivoting of a real symmetric positive semidefinite matrix.
Purpose:
DPSTRF computes
the Cholesky factorization with complete
pivoting of a real symmetric positive semidefinite matrix
A.
The
factorization has the form
P**T * A * P = U**T * U , if UPLO = āUā,
P**T * A * P = L * L**T, if UPLO = āLā,
where U is an upper triangular matrix and L is lower
triangular, and
P is stored as vector PIV.
This algorithm
does not attempt to check that A is positive
semidefinite. This version of the algorithm calls level 3
BLAS.
Parameters
UPLO
UPLO is
CHARACTER*1
Specifies whether the upper or lower triangular part of the
symmetric matrix A is stored.
= āUā: Upper triangular
= āLā: Lower triangular
N
N is INTEGER
The order of the matrix A. N >= 0.
A
A is DOUBLE
PRECISION array, dimension (LDA,N)
On entry, the symmetric matrix A. If UPLO = āUā,
the leading
n by n upper triangular part of A contains the upper
triangular part of the matrix A, and the strictly lower
triangular part of A is not referenced. If UPLO =
āLā, the
leading n by n lower triangular part of A contains the lower
triangular part of the matrix A, and the strictly upper
triangular part of A is not referenced.
On exit, if
INFO = 0, the factor U or L from the Cholesky
factorization as above.
LDA
LDA is INTEGER
The leading dimension of the array A. LDA >=
max(1,N).
PIV
PIV is INTEGER
array, dimension (N)
PIV is such that the nonzero entries are P( PIV(K), K ) =
1.
RANK
RANK is INTEGER
The rank of A given by the number of steps the algorithm
completed.
TOL
TOL is DOUBLE
PRECISION
User defined tolerance. If TOL < 0, then N*U*MAX( A(K,K)
)
will be used. The algorithm terminates at the (K-1)st step
if the pivot <= TOL.
WORK
WORK is DOUBLE
PRECISION array, dimension (2*N)
Work space.
INFO
INFO is INTEGER
< 0: If INFO = -K, the K-th argument had an illegal
value,
= 0: algorithm completed successfully, and
> 0: the matrix A is either rank deficient with computed
rank
as returned in RANK, or is not positive semidefinite. See
Section 7 of LAPACK Working Note #161 for further
information.
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
subroutine spstrf (character uplo, integer n, real, dimension( lda, * ) a,integer lda, integer, dimension( n ) piv, integer rank, real tol, real,dimension( 2*n ) work, integer info)
SPSTRF computes the Cholesky factorization with complete pivoting of a real symmetric positive semidefinite matrix.
Purpose:
SPSTRF computes
the Cholesky factorization with complete
pivoting of a real symmetric positive semidefinite matrix
A.
The
factorization has the form
P**T * A * P = U**T * U , if UPLO = āUā,
P**T * A * P = L * L**T, if UPLO = āLā,
where U is an upper triangular matrix and L is lower
triangular, and
P is stored as vector PIV.
This algorithm
does not attempt to check that A is positive
semidefinite. This version of the algorithm calls level 3
BLAS.
Parameters
UPLO
UPLO is
CHARACTER*1
Specifies whether the upper or lower triangular part of the
symmetric matrix A is stored.
= āUā: Upper triangular
= āLā: Lower triangular
N
N is INTEGER
The order of the matrix A. N >= 0.
A
A is REAL
array, dimension (LDA,N)
On entry, the symmetric matrix A. If UPLO = āUā,
the leading
n by n upper triangular part of A contains the upper
triangular part of the matrix A, and the strictly lower
triangular part of A is not referenced. If UPLO =
āLā, the
leading n by n lower triangular part of A contains the lower
triangular part of the matrix A, and the strictly upper
triangular part of A is not referenced.
On exit, if
INFO = 0, the factor U or L from the Cholesky
factorization as above.
LDA
LDA is INTEGER
The leading dimension of the array A. LDA >=
max(1,N).
PIV
PIV is INTEGER
array, dimension (N)
PIV is such that the nonzero entries are P( PIV(K), K ) =
1.
RANK
RANK is INTEGER
The rank of A given by the number of steps the algorithm
completed.
TOL
TOL is REAL
User defined tolerance. If TOL < 0, then N*U*MAX( A(K,K)
)
will be used. The algorithm terminates at the (K-1)st step
if the pivot <= TOL.
WORK
WORK is REAL
array, dimension (2*N)
Work space.
INFO
INFO is INTEGER
< 0: If INFO = -K, the K-th argument had an illegal
value,
= 0: algorithm completed successfully, and
> 0: the matrix A is either rank deficient with computed
rank
as returned in RANK, or is not positive semidefinite. See
Section 7 of LAPACK Working Note #161 for further
information.
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
subroutine zpstrf (character uplo, integer n, complex*16, dimension( lda, *) a, integer lda, integer, dimension( n ) piv, integer rank, doubleprecision tol, double precision, dimension( 2*n ) work, integer info)
ZPSTRF computes the Cholesky factorization with complete pivoting of a complex Hermitian positive semidefinite matrix.
Purpose:
ZPSTRF computes
the Cholesky factorization with complete
pivoting of a complex Hermitian positive semidefinite matrix
A.
The
factorization has the form
P**T * A * P = U**H * U , if UPLO = āUā,
P**T * A * P = L * L**H, if UPLO = āLā,
where U is an upper triangular matrix and L is lower
triangular, and
P is stored as vector PIV.
This algorithm
does not attempt to check that A is positive
semidefinite. This version of the algorithm calls level 3
BLAS.
Parameters
UPLO
UPLO is
CHARACTER*1
Specifies whether the upper or lower triangular part of the
symmetric matrix A is stored.
= āUā: Upper triangular
= āLā: Lower triangular
N
N is INTEGER
The order of the matrix A. N >= 0.
A
A is COMPLEX*16
array, dimension (LDA,N)
On entry, the symmetric matrix A. If UPLO = āUā,
the leading
n by n upper triangular part of A contains the upper
triangular part of the matrix A, and the strictly lower
triangular part of A is not referenced. If UPLO =
āLā, the
leading n by n lower triangular part of A contains the lower
triangular part of the matrix A, and the strictly upper
triangular part of A is not referenced.
On exit, if
INFO = 0, the factor U or L from the Cholesky
factorization as above.
LDA
LDA is INTEGER
The leading dimension of the array A. LDA >=
max(1,N).
PIV
PIV is INTEGER
array, dimension (N)
PIV is such that the nonzero entries are P( PIV(K), K ) =
1.
RANK
RANK is INTEGER
The rank of A given by the number of steps the algorithm
completed.
TOL
TOL is DOUBLE
PRECISION
User defined tolerance. If TOL < 0, then N*U*MAX( A(K,K)
)
will be used. The algorithm terminates at the (K-1)st step
if the pivot <= TOL.
WORK
WORK is DOUBLE
PRECISION array, dimension (2*N)
Work space.
INFO
INFO is INTEGER
< 0: If INFO = -K, the K-th argument had an illegal
value,
= 0: algorithm completed successfully, and
> 0: the matrix A is either rank deficient with computed
rank
as returned in RANK, or is not positive semidefinite. See
Section 7 of LAPACK Working Note #161 for further
information.
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Author
Generated automatically by Doxygen for LAPACK from the source code.