!&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
REAL FUNCTION atang1(y,x)
!***********************************************************************
!                                                                      *
!                     arctan (y/x) in range of (0,2*pi)                *
!                                                                      *
!***********************************************************************
REAL, INTENT (IN) :: x, y
REAL, PARAMETER :: pi=3.14159265359,pi2=pi*2.,pi05=pi*0.5,pi305=3.*pi05
!-----------------------------------------------------------------------
IF(y.lt.0.) THEN
	IF(x.lt.0.) THEN
	   atang1=pi+ATAN(y/x)
   ELSE IF(x.gt.0.) THEN
	   atang1=pi2+ATAN(y/x)
   ELSE
      atang1=pi305
   END IF
ELSE IF(y.gt.0.) THEN
	IF(x.lt.0.) THEN
	   atang1=pi+ATAN(y/x)
   ELSE IF(x.gt.0.) THEN
	   atang1=ATAN(y/x)
   ELSE
	   atang1=pi05
   END IF
ELSE
	IF(x.ge.0.) THEN
	   atang1=0.
   ELSE
	   atang1=pi
   END IF
END IF

!-----------------------------------------------------------------------
END FUNCTION atang1
