INTERFACE
SUBROUTINE gpsro_op(kdlen,kdbdy,K_IMXCOUNT,klen,K_IVNMRQ,presf5,&
 & P_TF5,P_QF5,P_GEOPF5,P_ZXPP,&
 & P_ZXPP_N,P_ZXPP_DNDZ,P_ZXPP_D2NDZ2,P_ZXPP_T,K_LEVM,&
 & LD_QC_DNDZ,LD_QC_D2NDZ2) 
USE PARKIND1 ,ONLY : JPIM ,JPRB
USE YOMDIM, ONLY : nflevg
USE YOMDB
INTEGER(KIND=JPIM),INTENT(IN) :: KDLEN
INTEGER(KIND=JPIM),INTENT(IN) :: KDBDY
INTEGER(KIND=JPIM),INTENT(IN) :: K_IMXCOUNT
INTEGER(KIND=JPIM),INTENT(IN) :: KLEN
INTEGER(KIND=JPIM),INTENT(IN) :: K_IVNMRQ(KDLEN,KDBDY)
REAL(KIND=JPRB) ,INTENT(IN) :: PRESF5(KDLEN,NFLEVG)
REAL(KIND=JPRB) ,INTENT(IN) :: P_TF5(KDLEN,0:NFLEVG)
REAL(KIND=JPRB) ,INTENT(IN) :: P_QF5(KDLEN,0:NFLEVG)
REAL(KIND=JPRB) ,INTENT(IN) :: P_GEOPF5(KDLEN,NFLEVG)
REAL(KIND=JPRB) ,INTENT(OUT) :: P_ZXPP(KDLEN,K_IMXCOUNT)
REAL(KIND=JPRB) ,INTENT(OUT), OPTIONAL :: P_ZXPP_N(KDLEN,K_IMXCOUNT)
REAL(KIND=JPRB) ,INTENT(OUT), OPTIONAL :: P_ZXPP_DNDZ(KDLEN,K_IMXCOUNT)
REAL(KIND=JPRB) ,INTENT(OUT), OPTIONAL :: P_ZXPP_D2NDZ2(KDLEN,K_IMXCOUNT)
REAL(KIND=JPRB) ,INTENT(OUT), OPTIONAL :: P_ZXPP_T(KDLEN,K_IMXCOUNT)
INTEGER(KIND=JPIM),INTENT(OUT), OPTIONAL :: K_LEVM(KDLEN,K_IMXCOUNT)
LOGICAL(KIND=JPIM),INTENT(OUT), OPTIONAL :: LD_QC_DNDZ(KDLEN,K_IMXCOUNT)
LOGICAL(KIND=JPIM),INTENT(OUT), OPTIONAL :: LD_QC_D2NDZ2(KDLEN,K_IMXCOUNT)
END SUBROUTINE gpsro_op
END INTERFACE
