]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MINICERN/mathlib/gen/divon/ldlsol.F
Possibility to have different binaries in the same tree introduced
[u/mrichter/AliRoot.git] / MINICERN / mathlib / gen / divon / ldlsol.F
CommitLineData
fe4da5cc 1*
2* $Id$
3*
4* $Log$
5* Revision 1.1.1.1 1996/04/01 15:03:27 mclareni
6* Mathlib gen
7*
8*
9#include "gen/pilot.h"
10 SUBROUTINE LDLSOL (N,NADIM,CHOL,B,X)
11 INTEGER N, NADIM
12 DOUBLE PRECISION CHOL(NADIM, N)
13 DOUBLE PRECISION B(N), X(N)
14 INTEGER I, IM1, J, JJ, JP1
15 DOUBLE PRECISION SUM
16 X(1)=B(1)
17 IF(N.EQ.1) GOTO 30
18 DO 20 I=2,N
19 SUM=B(I)
20 IM1=I-1
21 DO 10 J=1,IM1
22 SUM=SUM-CHOL(I,J)*X(J)
23 10 CONTINUE
24 X(I)=SUM
25 20 CONTINUE
26 30 IF(CHOL(N,N).LE.0.0D+0) RETURN
27 X(N)=X(N)/CHOL(N,N)
28 IF(N.EQ.1) RETURN
29 DO 50 JJ=2,N
30 J=N-JJ+1
31 IF(CHOL(J,J).LE.0.0D+0) RETURN
32 SUM=X(J)/CHOL(J,J)
33 JP1=J+1
34 DO 40 I=JP1,N
35 SUM=SUM-CHOL(I,J)*X(I)
36 40 CONTINUE
37 X(J)=SUM
38 50 CONTINUE
39 RETURN
40 END