File indexing completed on 2025-08-05 08:15:46
0001
0002
0003
0004 FUNCTION ULANGL(X,Y)
0005
0006
0007 COMMON/LUDAT1/MSTU(200),PARU(200),MSTJ(200),PARJ(200)
0008 SAVE /LUDAT1/
0009
0010 ULANGL=0.
0011 R=SQRT(X**2+Y**2)
0012 IF(R.LT.1E-20) RETURN
0013 IF(ABS(X)/R.LT.0.8) THEN
0014 ULANGL=SIGN(ACOS(X/R),Y)
0015 ELSE
0016 ULANGL=ASIN(Y/R)
0017 IF(X.LT.0..AND.ULANGL.GE.0.) THEN
0018 ULANGL=PARU(1)-ULANGL
0019 ELSEIF(X.LT.0.) THEN
0020 ULANGL=-PARU(1)-ULANGL
0021 ENDIF
0022 ENDIF
0023
0024 RETURN
0025 END