]>
Commit | Line | Data |
---|---|---|
fe4da5cc | 1 | *CMZ : 17/07/98 15.44.33 by Federico Carminati |
2 | *-- Author : | |
3 | C********************************************************************* | |
4 | ||
5 | FUNCTION ULANGL(X,Y) | |
6 | ||
7 | C...Purpose: to reconstruct an angle from given x and y coordinates. | |
8 | *KEEP,LUDAT1. | |
9 | COMMON /LUDAT1/ MSTU(200),PARU(200),MSTJ(200),PARJ(200) | |
10 | SAVE /LUDAT1/ | |
11 | *KEND. | |
12 | ||
13 | ULANGL=0. | |
14 | R=SQRT(X**2+Y**2) | |
15 | IF(R.LT.1E-20) RETURN | |
16 | IF(ABS(X)/R.LT.0.8) THEN | |
17 | ULANGL=SIGN(ACOS(X/R),Y) | |
18 | ELSE | |
19 | ULANGL=ASIN(Y/R) | |
20 | IF(X.LT.0..AND.ULANGL.GE.0.) THEN | |
21 | ULANGL=PARU(1)-ULANGL | |
22 | ELSEIF(X.LT.0.) THEN | |
23 | ULANGL=-PARU(1)-ULANGL | |
24 | ENDIF | |
25 | ENDIF | |
26 | ||
27 | RETURN | |
28 | END |