]> git.uio.no Git - u/mrichter/AliRoot.git/blob - GEANT321/matx55/ssmt5t.F
This commit was generated by cvs2svn to compensate for changes in r2,
[u/mrichter/AliRoot.git] / GEANT321 / matx55 / ssmt5t.F
1 *
2 * $Id$
3 *
4 * $Log$
5 * Revision 1.1.1.1  1996/03/06 15:37:36  mclareni
6 * Add geane321 source directories
7 *
8 *
9 #include "geant321/pilot.h"
10 *CMZ :  3.21/02 29/03/94  15.41.50  by  S.Giani
11 *-- Author :
12       SUBROUTINE SSMT5T(A,S,R)
13 C *** ------------------------------------------------------            05/07/81
14 C *** TRANSFORMATION OF SYMMETRIC 5X5 MATRIX S: A*S*AT -> R.
15 C *** A IS A GENERAL 5X5 MATRIX WHEREAS S,R ARE SYMMETRIC
16 C *** MATRICES STORED IN TRIANGULAR FORM. FOR:I,J=1,5
17 C *** R(I,J) = SUM:K=1,5(SUM:L=1,5(A(I,L)*S(L,K)*A(J,K))).
18 C *** NB: S AND R MAY WELL BE THE SAME MATRIX.
19 C
20 C        Author: A. Haas (Freiburg University)
21 C
22 C *** ------------------------------------------------------
23 #if !defined(CERNLIB_SINGLE)
24       DOUBLE PRECISION A,S,R,Q,T1,T2,T3,T4,T5
25 #endif
26       DIMENSION A(25),S(15),R(15),Q(15)
27       DO 5 I=1,15
28          Q(I)=S(I)
29     5 CONTINUE
30       K=1
31       DO 15 J=1,5
32          T1=A(J   )
33          T2=A(J+ 5)
34          T3=A(J+10)
35          T4=A(J+15)
36          T5=A(J+20)
37          DO 10 I=J,5
38             R(K)=A(I   )*(Q(1)*T1+Q(2)*T2+Q( 3)*T3+Q( 4)*T4+Q( 5)*T5)
39      +          +A(I+ 5)*(Q(2)*T1+Q(6)*T2+Q( 7)*T3+Q( 8)*T4+Q( 9)*T5)
40      +          +A(I+10)*(Q(3)*T1+Q(7)*T2+Q(10)*T3+Q(11)*T4+Q(12)*T5)
41      +          +A(I+15)*(Q(4)*T1+Q(8)*T2+Q(11)*T3+Q(13)*T4+Q(14)*T5)
42      +          +A(I+20)*(Q(5)*T1+Q(9)*T2+Q(12)*T3+Q(14)*T4+Q(15)*T5)
43             K=K+1
44    10    CONTINUE
45    15 CONTINUE
46 *
47       END