      SUBROUTINE GPLAGE(P,L,H,XO,YO,ZO,A,B,ZE,AZ,R,XI,ETA,X,Y,Z,XP,YP,ZP        
     1,DA)                                                                      
C                                                                               
C                                                                               
C        THIS SUBROUTINE SOLVES THE DIRECT PROBLEM IN 3 DIMENSIONAL GEODETIC    
C      POSITIONING.GIVEN THE GEODETIC LATITUDE AND LONGITUDE, HEIGHT AND        
C      THE COMPONENTS OF THE DEFLECTION OF THE VERTICALFOR POINT 1 AS WELL      
C      AS THE OBSERVED DATA IT WILL COMPUTE X,Y,Z OF POINT 2.                   
C                                                                               
C        INPUT:                                                                 
C              P,L,H - ELLIPSOIDAL COORDINATES OF POINT 1.                      
C              XO,YO,ZO - TRANSLATION COMPONENTS OF THE ORIGIN OF THE           
C                         GEODETIC SYSTEM.                                      
C              A,B - SEMI-MAJOR AND SEMI-MINOR AXES OF THE REFERENCE            
C                    ELLIPSOID.                                                 
C              ZE,AZ,R - OBSERVED DATA - ZE - ZENITH DISTANCE                   
C                                        AZ - AZIMUTH                           
C                                        R   DISTANCE                           
C              XI,ETA - DEFLECTION OF THE VERTICAL COMPONENTS.                  
C        OUTPUT:                                                                
C              P,L,H - GEOGRAPHICAL COORDINATES OF POINT 1.                     
C              XP,YP,ZP - CARTESIAN COORDINATES OF POINT 1.                     
C              X,Y,Z - CARTESIAN COORDINATES OF POINT 2.                        
C              DA  - ASTRONOMIC AZIMUTH MINUS GEODETIC AZIMUTH.                 
C                                                                               
C                                      WRITTEN BY G.BOWIE,DEC.,1977.            
C                                                                               
      IMPLICIT REAL*8(A-Z)                                                      
      PI=3.141592653589793D0                                                    
      CALL PLHXYZ(P,L,H,XO,YO,ZO,A,B,XP,YP,ZP)                                  
      CP=DCOS(P)                                                                
      SP=DSIN(P)                                                                
      SL=DSIN(L)                                                                
      CL=DCOS(L)                                                                
      SZ=DSIN(ZE)                                                               
      CZ=DCOS(ZE)                                                               
      SA=DSIN(AZ)                                                               
      CA=DCOS(AZ)                                                               
      DA=ETA*DTAN(P)-(XI*SA-ETA*CA)*DCOTAN(ZE)                                  
      X=XP-R*(SP*CL*(SZ*CA+DA*SZ*SA+XI*CZ)+SL*(-DA*SZ*CA+SZ*SA+ETA*CZ)          
     1  -CP*CL*(-XI*SZ*CA-ETA*SZ*SA+CZ))                                        
      Y=YP-R*(SP*SL*(SZ*CA+DA*SZ*SA+XI*CZ)-CL*(-DA*SZ*CA+SZ*SA+ETA*CZ)          
     1  -CP*SL*(-XI*SZ*CA-ETA*SZ*SA+CZ))                                        
      Z=ZP+R*(CP*(SZ*CA+DA*SZ*SA+XI*CZ)+SP*(-XI*SZ*CA-ETA*SZ*SA+CZ))            
      RETURN                                                                    
      END                                                                       
