]> git.uio.no Git - u/mrichter/AliRoot.git/blame - GEANT321/cgpack/cgtset.F
Corrections to comply with coding convention
[u/mrichter/AliRoot.git] / GEANT321 / cgpack / cgtset.F
CommitLineData
fe4da5cc 1*
2* $Id$
3*
4* $Log$
5* Revision 1.1.1.1 1995/10/24 10:19:45 cernlib
6* Geant
7*
8*
9#include "geant321/pilot.h"
10*CMZ : 3.21/02 29/03/94 15.41.32 by S.Giani
11*-- Author :
12 SUBROUTINE CGTSET(N,T,IREP)
13************************************************************************
14* *
15* Name: CGTSET *
16* Author: E. Chernyaev Date: 31.07.88 *
17* Revised: *
18* *
19* Function: Set transformation to screen coordinates and *
20* find back transformation to world coordinates *
21* *
22* References: none *
23* *
24* Input: N - transformation number *
25* T(4,3) - transformation matrix *
26* *
27* Output: IREP - reply ( 0 - O.K. *
28* -1 - if illigal N, *
29* -2 - if DET(T)=0.) *
30* *
31* Errors: none *
32* *
33************************************************************************
34#include "geant321/cgctra.inc"
35 REAL T(4,3)
36*- P A R A M E T E R S C H E C K
37 IREP = 0
38 IF (N.LE.0 .OR. N.GT.NTMAX) IREP = -1
39 DET = T(1,1)*T(2,2)*T(3,3) - T(3,1)*T(2,2)*T(1,3) +
40 + T(3,1)*T(1,2)*T(2,3) - T(1,1)*T(3,2)*T(2,3) +
41 + T(2,1)*T(3,2)*T(1,3) - T(2,1)*T(1,2)*T(3,3)
42* IF (ABS(DET) .LT. 1./DELWOR) IREP = -2
43 IF (IREP .LT. 0) GOTO 999
44* S E T T R A N S F O R M A T I O N M A T R I X
45 DO 200 I=1,4
46 DO 100 J=1,3
47 TSCRN(I,J,N) = T(I,J)
48 100 CONTINUE
49 200 CONTINUE
50* F I N D M A T R I X F O R B A C K TRANSFORMATION
51 TBACK(1,1,N) = (T(2,2)*T(3,3) - T(2,3)*T(3,2)) / DET
52 TBACK(2,1,N) =-(T(2,1)*T(3,3) - T(2,3)*T(3,1)) / DET
53 TBACK(3,1,N) = (T(2,1)*T(3,2) - T(2,2)*T(3,1)) / DET
54 TBACK(4,1,N) =-(T(2,1)*T(3,2)*T(4,3) - T(4,1)*T(3,2)*T(2,3) +
55 + T(4,1)*T(2,2)*T(3,3) - T(2,1)*T(4,2)*T(3,3) +
56 + T(3,1)*T(4,2)*T(2,3) - T(3,1)*T(2,2)*T(4,3))/DET
57 TBACK(1,2,N) =-(T(1,2)*T(3,3) - T(1,3)*T(3,2)) / DET
58 TBACK(2,2,N) = (T(1,1)*T(3,3) - T(1,3)*T(3,1)) / DET
59 TBACK(3,2,N) =-(T(1,1)*T(3,2) - T(1,2)*T(3,1)) / DET
60 TBACK(4,2,N) = (T(1,1)*T(3,2)*T(4,3) - T(4,1)*T(3,2)*T(1,3) +
61 + T(4,1)*T(1,2)*T(3,3) - T(1,1)*T(4,2)*T(3,3) +
62 + T(3,1)*T(4,2)*T(1,3) - T(3,1)*T(1,2)*T(4,3))/DET
63 TBACK(1,3,N) = (T(1,2)*T(2,3) - T(1,3)*T(2,2)) / DET
64 TBACK(2,3,N) =-(T(1,1)*T(2,3) - T(1,3)*T(2,1)) / DET
65 TBACK(3,3,N) = (T(1,1)*T(2,2) - T(1,2)*T(2,1)) / DET
66 TBACK(4,3,N) =-(T(1,1)*T(2,2)*T(4,3) - T(4,1)*T(2,2)*T(1,3) +
67 + T(4,1)*T(1,2)*T(2,3) - T(1,1)*T(4,2)*T(2,3) +
68 + T(2,1)*T(4,2)*T(1,3) - T(2,1)*T(1,2)*T(4,3))/DET
69*
70 999 RETURN
71 END