      SUBROUTINE FPLAT(A,B,Y,PHI1)                                              
C                                                                               
C                                                                               
C        THIS ROUTINE COMPUTES THE FOOT-POINT LATITUDE REQUIRED IN              
C      TRANSFORMING TRANSVERSE MERCATOR PLANE COORDINATES X,Y TO                
C      ELLIPSOIDAL COORDINATES.                                                 
C                                                                               
C                                                                               
C        INPUT:                                                                 
C                                                                               
C              A    - SEMI-MAJOR AXES OF THE REFERENCE ELLIPSOID.               
C                                                                               
C              B    - SEMI-MINOR AXES OF THE REFERENCE ELLIPSOID.               
C                                                                               
C              Y    - NORTHING OF THE POINT FOR WHICH THE FOOT-POINT            
C                     LATITUDE IS TO BE COMPUTED.                               
C                                                                               
C        OUTPUT:                                                                
C                                                                               
C              PHI1 - FOOT-POINT LATITUDE IN RADIANS.                           
C                                                                               
C                                             WRITTEN BY R.R.STEEVES            
C                                                    JUNE,1977                  
C                                                                               
C                                                                               
      IMPLICIT REAL*8(A-Z)                                                      
      F(PHI)=A*(A0*PHI-A2*DSIN(2.D0*PHI)+A4*DSIN(4.D0*PHI)-A6*DSIN(6.D0*        
     1       PHI)+A8*DSIN(8.D0*PHI))-Y                                          
      FP(PHI)=A*(A0-2.D0*A2*DCOS(2.D0*PHI)+4.D0*A4*DCOS(4.D0*PHI)-6.D0*         
     1        A6*DCOS(6.D0*PHI)+8.D0*A8*DCOS(8.D0*PHI))                         
      E2=(A*A-B*B)/(A*A)                                                        
      E4=E2*E2                                                                  
      E6=E4*E2                                                                  
      E8=E6*E2                                                                  
      A0=1.D0-E2/4.D0-3.D0*E4/64.D0-5.D0*E6/256.D0-175.D0*E8/16384.D0           
      A2=3.D0/8.D0*(E2+E4/4.D0+15.D0*E6/128.D0-455.D0*E8/4096.D0)               
      A4=15.D0/256.D0*(E4+3.D0*E6/4.D0-77.D0*E8/128.D0)                         
      A6=35.D0/3072.D0*(E6-41.D0*E8/32.D0)                                      
      A8=-315.D0*E8/131072.D0                                                   
      PHI1=Y/A                                                                  
    1 DPHI=F(PHI1)/FP(PHI1)                                                     
      PHI1=PHI1-DPHI                                                            
      IF(DABS(DPHI).LT.1.D-11)GOTO 2                                            
      GO TO 1                                                                   
    2 CONTINUE                                                                  
      RETURN                                                                    
      END                                                                       
