Mercurial > octave
diff libcruft/dassl/ddaslv.f @ 4329:d53c33d93440
[project @ 2003-02-18 20:00:48 by jwe]
author | jwe |
---|---|
date | Tue, 18 Feb 2003 20:08:20 +0000 |
parents | 30c606bec7a8 |
children | db5e0814277a |
line wrap: on
line diff
--- a/libcruft/dassl/ddaslv.f Sun Feb 16 04:29:00 2003 +0000 +++ b/libcruft/dassl/ddaslv.f Tue Feb 18 20:08:20 2003 +0000 @@ -13,26 +13,27 @@ C REAL INFORMATION ARE STORED IN THE ARRAY WM. C INTEGER MATRIX INFORMATION IS STORED IN C THE ARRAY IWM. -C FOR A DENSE MATRIX, THE LINPACK ROUTINE -C DGESL IS CALLED. -C FOR A BANDED MATRIX,THE LINPACK ROUTINE -C DGBSL IS CALLED. +C FOR A DENSE MATRIX, THE LAPACK ROUTINE +C DGETRS IS CALLED. +C FOR A BANDED MATRIX,THE LAPACK ROUTINE +C DGBTRS IS CALLED. C----------------------------------------------------------------------- -C***ROUTINES CALLED DGBSL, DGESL +C***ROUTINES CALLED DGBTRS, DGETRF C***REVISION HISTORY (YYMMDD) C 830315 DATE WRITTEN C 901009 Finished conversion to SLATEC 4.0 format (F.N.Fritsch) C 901019 Merged changes made by C. Ulrich with SLATEC 4.0 format. C 901026 Added explicit declarations for all variables and minor C cosmetic changes to prologue. (FNF) +C 020204 Convert to use LAPACK C***END PROLOGUE DDASLV C INTEGER NEQ, IWM(*) DOUBLE PRECISION DELTA(*), WM(*) C - EXTERNAL DGBSL, DGESL + EXTERNAL DGBTRS, DGETRS C - INTEGER LIPVT, LML, LMU, LMTYPE, MEBAND, MTYPE, NPD + INTEGER LIPVT, LML, LMU, LMTYPE, MEBAND, MTYPE, NPD, INLAPACK PARAMETER (NPD=1) PARAMETER (LML=1) PARAMETER (LMU=2) @@ -44,7 +45,8 @@ GO TO(100,100,300,400,400),MTYPE C C DENSE MATRIX -100 CALL DGESL(WM(NPD),NEQ,NEQ,IWM(LIPVT),DELTA,0) +100 CALL DGETRS('N', NEQ, 1, WM(NPD), NEQ, IWM(LIPVT), DELTA, NEQ, + * INLPCK) RETURN C C DUMMY SECTION FOR MTYPE=3 @@ -53,8 +55,8 @@ C C BANDED MATRIX 400 MEBAND=2*IWM(LML)+IWM(LMU)+1 - CALL DGBSL(WM(NPD),MEBAND,NEQ,IWM(LML), - * IWM(LMU),IWM(LIPVT),DELTA,0) + CALL DGBTRS ('N', NEQ, IWM(LML), IWM(LMU), 1, WM(NPD), MEBAND, + * IWM(LIPVT), DELTA, NEQ, INLPCK); RETURN C------END OF SUBROUTINE DDASLV------ END