This commit was generated by cvs2svn to compensate for changes in r2,
[u/mrichter/AliRoot.git] / MINICERN / mathlib / gen / f / ortran.F
1 *
2 * $Id$
3 *
4 * $Log$
5 * Revision 1.1.1.1  1996/04/01 15:02:37  mclareni
6 * Mathlib gen
7 *
8 *
9 #include "gen/pilot.h"
10       SUBROUTINE ORTRAN(NM,N,LOW,IGH,A,ORT,Z)
11       INTEGER I,J,N,KL,MM,MP,NM,IGH,LOW,MP1
12       REAL A(NM,IGH),ORT(IGH),Z(NM,N)
13       REAL G,H
14       DO 80 I = 1, N
15          DO 60 J = 1, N
16    60    Z(I,J) = 0.0
17          Z(I,I) = 1.0
18    80 CONTINUE
19       KL = IGH - LOW - 1
20       IF (KL .LT. 1) GO TO 200
21       DO 140 MM = 1, KL
22          MP = IGH - MM
23          H = A(MP,MP-1) * ORT(MP)
24          IF (H .EQ. 0.0) GO TO 140
25          MP1 = MP + 1
26          DO 100 I = MP1, IGH
27   100    ORT(I) = A(I,MP-1)
28          DO 130 J = MP, IGH
29             G = 0.0
30             DO 110 I = MP, IGH
31   110       G = G + ORT(I) * Z(I,J)
32             G = G / H
33             DO 120 I = MP, IGH
34   120       Z(I,J) = Z(I,J) + G * ORT(I)
35   130    CONTINUE
36   140 CONTINUE
37   200 RETURN
38       END