GNU Octave 10.1.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
 
Loading...
Searching...
No Matches
ddaslv.f
Go to the documentation of this file.
1 SUBROUTINE ddaslv (NEQ, DELTA, WM, IWM)
2C***BEGIN PROLOGUE DDASLV
3C***SUBSIDIARY
4C***PURPOSE Linear system solver for DDASSL.
5C***LIBRARY SLATEC (DASSL)
6C***TYPE DOUBLE PRECISION (SDASLV-S, DDASLV-D)
7C***AUTHOR PETZOLD, LINDA R., (LLNL)
8C***DESCRIPTION
9C-----------------------------------------------------------------------
10C THIS ROUTINE MANAGES THE SOLUTION OF THE LINEAR
11C SYSTEM ARISING IN THE NEWTON ITERATION.
12C MATRICES AND REAL TEMPORARY STORAGE AND
13C REAL INFORMATION ARE STORED IN THE ARRAY WM.
14C INTEGER MATRIX INFORMATION IS STORED IN
15C THE ARRAY IWM.
16C FOR A DENSE MATRIX, THE LAPACK ROUTINE
17C DGETRS IS CALLED.
18C FOR A BANDED MATRIX,THE LAPACK ROUTINE
19C DGBTRS IS CALLED.
20C-----------------------------------------------------------------------
21C***ROUTINES CALLED DGBTRS, DGETRF
22C***REVISION HISTORY (YYMMDD)
23C 830315 DATE WRITTEN
24C 901009 Finished conversion to SLATEC 4.0 format (F.N.Fritsch)
25C 901019 Merged changes made by C. Ulrich with SLATEC 4.0 format.
26C 901026 Added explicit declarations for all variables and minor
27C cosmetic changes to prologue. (FNF)
28C 020204 Convert to use LAPACK
29C***END PROLOGUE DDASLV
30C
31 INTEGER NEQ, IWM(*)
32 DOUBLE PRECISION DELTA(*), WM(*)
33C
34 EXTERNAL dgbtrs, dgetrs
35C
36 INTEGER LIPVT, LML, LMU, LMTYPE, MEBAND, MTYPE, NPD, INFO
37 parameter(npd=1)
38 parameter(lml=1)
39 parameter(lmu=2)
40 parameter(lmtype=4)
41 parameter(lipvt=22)
42C
43C***FIRST EXECUTABLE STATEMENT DDASLV
44 mtype=iwm(lmtype)
45 GO TO(100,100,300,400,400),mtype
46C
47C DENSE MATRIX
48100 CALL dgetrs('N', neq, 1, wm(npd), neq, iwm(lipvt), delta, neq,
49 * info)
50 RETURN
51C
52C DUMMY SECTION FOR MTYPE=3
53300 CONTINUE
54 RETURN
55C
56C BANDED MATRIX
57400 meband=2*iwm(lml)+iwm(lmu)+1
58 CALL dgbtrs ('N', neq, iwm(lml), iwm(lmu), 1, wm(npd), meband,
59 * iwm(lipvt), delta, neq, inlpck)
60 RETURN
61C------END OF SUBROUTINE DDASLV------
62 END
subroutine ddaslv(neq, delta, wm, iwm)
Definition ddaslv.f:2