INTERFACE
SUBROUTINE DISCOM_GEMS_AD(phirad, pxmus, pxmuv, prm, pgb, prp, prmu, pga,&
 & ptaer, ptaerb, ptray, pomega, pomegab, phasef, phasefb, ppl, ppsl,&
 & proatm, proatmb, pdtdir, pdtdirb, pdtdif, pdtdifb, putdir, putdirb,&
 & putdif, putdifb, psphal, psphalb) 
USE PARKIND1 ,ONLY : JPIM ,JPRB
USE rt6svalues
 REAL(KIND=JPRB), INTENT(IN) :: prp(knp), prmu(knbmu), pga(knbmu)
 REAL(KIND=JPRB), INTENT(INOUT) :: prm(-kmu:kmu), pgb(-kmu:kmu)
 REAL(KIND=JPRB), INTENT(IN) :: phirad, pxmus, pxmuv
 REAL(KIND=JPRB), INTENT(IN) :: ptaer(0:knt), ptray(0:knt)
 REAL(KIND=JPRB), INTENT(INOUT) :: ptaerb(0:knt)
 REAL(KIND=JPRB), INTENT(IN) :: ppl(knbmu, -1:knang+1)
 REAL(KIND=JPRB), INTENT(INOUT) :: phasef(0:knt, knbmu)
 REAL(KIND=JPRB), INTENT(IN) :: pomega(0:knt)
 REAL(KIND=JPRB), INTENT(INOUT) :: phasefb(0:knt, knbmu), pomegab(0:knt)
 REAL(KIND=JPRB), INTENT(IN) :: ppsl(0:knang, -1:knang, -kmu:kmu)
 REAL(KIND=JPRB), INTENT(IN) :: proatm, psphal
 REAL(KIND=JPRB), INTENT(INOUT) :: proatmb, psphalb
 REAL(KIND=JPRB), INTENT(IN) :: pdtdir, pdtdif
 REAL(KIND=JPRB), INTENT(INOUT) :: pdtdirb, pdtdifb
 REAL(KIND=JPRB), INTENT(IN) :: putdir, putdif
 REAL(KIND=JPRB), INTENT(INOUT) :: putdirb, putdifb
END SUBROUTINE DISCOM_GEMS_AD
END INTERFACE
