interface_lmdz_ecrad Module


Contents


Subroutines

public subroutine RADIATION_SCHEME(KIDIA, KFDIA, KLON, KLEV, KAEROSOL, NSW, namelist_file, ok_3Deffect, debut, ok_volcan, flag_aerosol_strat, IDAY, TIME, PSOLAR_IRRADIANCE, PMU0, PTEMPERATURE_SKIN, PALBEDO_DIF, PALBEDO_DIR, PEMIS, PEMIS_WINDOW, PGELAM, PGEMU, PPRESSURE_H, PTEMPERATURE_H, PQ, PQSAT, PCO2, PCH4, PN2O, PNO2, PCFC11, PCFC12, PHCFC22, PCCL4, PO3, PO2, PCLOUD_FRAC, PQ_LIQUID, PQ_ICE, PQ_SNOW, ZRE_LIQUID_UM, ZRE_ICE_UM, PAEROSOL_OLD, PAEROSOL, PFLUX_SW, PFLUX_LW, PFLUX_SW_CLEAR, PFLUX_LW_CLEAR, PFLUX_SW_DN, PFLUX_LW_DN, PFLUX_SW_DN_CLEAR, PFLUX_LW_DN_CLEAR, PFLUX_SW_UP, PFLUX_LW_UP, PFLUX_SW_UP_CLEAR, PFLUX_LW_UP_CLEAR, PFLUX_DIR, PFLUX_DIR_CLEAR, PFLUX_DIR_INTO_SUN, PFLUX_UV, PFLUX_PAR, PFLUX_PAR_CLEAR, PEMIS_OUT, PLWDERIVATIVE, PSWDIFFUSEBAND, PSWDIRECTBAND, ecrad_cloud_cover_sw)

! ok AI ATTENTION a voir avec JL

Arguments

Type IntentOptional Attributes Name
integer(kind=JPIM), intent(in) :: KIDIA
integer(kind=JPIM), intent(in) :: KFDIA
integer(kind=JPIM), intent(in) :: KLON
integer(kind=JPIM), intent(in) :: KLEV
integer(kind=JPIM), intent(in) :: KAEROSOL
integer(kind=JPIM), intent(in) :: NSW
character(len=512), intent(in) :: namelist_file
logical, intent(in) :: ok_3Deffect
logical, intent(in) :: debut
logical, intent(in) :: ok_volcan
integer(kind=JPIM), intent(in) :: flag_aerosol_strat
integer(kind=JPIM), intent(in) :: IDAY
real(kind=JPRB), intent(in) :: TIME
real(kind=JPRB), intent(in) :: PSOLAR_IRRADIANCE
real(kind=JPRB), intent(in) :: PMU0(KLON)
real(kind=JPRB), intent(in) :: PTEMPERATURE_SKIN(KLON)
real(kind=JPRB), intent(in) :: PALBEDO_DIF(KLON,NSW)
real(kind=JPRB), intent(in) :: PALBEDO_DIR(KLON,NSW)
real(kind=JPRB), intent(in) :: PEMIS(KLON)
real(kind=JPRB), intent(in) :: PEMIS_WINDOW(KLON)
real(kind=JPRB), intent(in) :: PGELAM(KLON)
real(kind=JPRB), intent(in) :: PGEMU(KLON)
real(kind=JPRB), intent(in) :: PPRESSURE_H(KLON,KLEV+1)
real(kind=JPRB), intent(in) :: PTEMPERATURE_H(KLON,KLEV+1)
real(kind=JPRB), intent(in) :: PQ(KLON,KLEV)
real(kind=JPRB), intent(in) :: PQSAT(KLON,KLEV)
real(kind=JPRB), intent(in) :: PCO2
real(kind=JPRB), intent(in) :: PCH4
real(kind=JPRB), intent(in) :: PN2O
real(kind=JPRB), intent(in) :: PNO2
real(kind=JPRB), intent(in) :: PCFC11
real(kind=JPRB), intent(in) :: PCFC12
real(kind=JPRB), intent(in) :: PHCFC22
real(kind=JPRB), intent(in) :: PCCL4
real(kind=JPRB), intent(in) :: PO3(KLON,KLEV)
real(kind=JPRB), intent(in) :: PO2
real(kind=JPRB), intent(in) :: PCLOUD_FRAC(KLON,KLEV)
real(kind=JPRB), intent(in) :: PQ_LIQUID(KLON,KLEV)
real(kind=JPRB), intent(in) :: PQ_ICE(KLON,KLEV)
real(kind=JPRB), intent(in) :: PQ_SNOW(KLON,KLEV)
real(kind=JPRB) :: ZRE_LIQUID_UM(KLON,KLEV)
real(kind=JPRB) :: ZRE_ICE_UM(KLON,KLEV)
real(kind=JPRB), intent(in) :: PAEROSOL_OLD(KLON,6,KLEV)
real(kind=JPRB), intent(in) :: PAEROSOL(KLON,KLEV,KAEROSOL)
real(kind=JPRB), intent(out) :: PFLUX_SW(KLON,KLEV+1)
real(kind=JPRB), intent(out) :: PFLUX_LW(KLON,KLEV+1)
real(kind=JPRB), intent(out) :: PFLUX_SW_CLEAR(KLON,KLEV+1)
real(kind=JPRB), intent(out) :: PFLUX_LW_CLEAR(KLON,KLEV+1)

** DN and UP flux on half-levels (W m-2)

real(kind=JPRB), intent(out) :: PFLUX_SW_DN(KLON,KLEV+1)
real(kind=JPRB), intent(out) :: PFLUX_LW_DN(KLON,KLEV+1)
real(kind=JPRB), intent(out) :: PFLUX_SW_DN_CLEAR(KLON,KLEV+1)
real(kind=JPRB), intent(out) :: PFLUX_LW_DN_CLEAR(KLON,KLEV+1)
real(kind=JPRB), intent(out) :: PFLUX_SW_UP(KLON,KLEV+1)
real(kind=JPRB), intent(out) :: PFLUX_LW_UP(KLON,KLEV+1)
real(kind=JPRB), intent(out) :: PFLUX_SW_UP_CLEAR(KLON,KLEV+1)
real(kind=JPRB), intent(out) :: PFLUX_LW_UP_CLEAR(KLON,KLEV+1)
real(kind=JPRB), intent(out) :: PFLUX_DIR(KLON,KLEV+1)
real(kind=JPRB), intent(out) :: PFLUX_DIR_CLEAR(KLON,KLEV+1)
real(kind=JPRB), intent(out) :: PFLUX_DIR_INTO_SUN(KLON)
real(kind=JPRB), intent(out) :: PFLUX_UV(KLON)
real(kind=JPRB), intent(out) :: PFLUX_PAR(KLON)
real(kind=JPRB), intent(out) :: PFLUX_PAR_CLEAR(KLON)
real(kind=JPRB), intent(out) :: PEMIS_OUT(KLON)
real(kind=JPRB), intent(out) :: PLWDERIVATIVE(KLON,KLEV+1)
real(kind=JPRB), intent(out) :: PSWDIFFUSEBAND(KLON,NSW)
real(kind=JPRB), intent(out) :: PSWDIRECTBAND(KLON,NSW)
real(kind=JPRB), intent(out) :: ecrad_cloud_cover_sw(KLON)

public subroutine RADIATION_SCHEME_S2(KIDIA, KFDIA, KLON, KLEV, KAEROSOL, NSW, namelist_file, ok_3Deffect, debut, ok_volcan, flag_aerosol_strat, IDAY, TIME, PSOLAR_IRRADIANCE, PMU0, PTEMPERATURE_SKIN, PALBEDO_DIF, PALBEDO_DIR, PEMIS, PEMIS_WINDOW, PGELAM, PGEMU, PPRESSURE_H, PTEMPERATURE_H, PQ, PQSAT, PCO2, PCH4, PN2O, PNO2, PCFC11, PCFC12, PHCFC22, PCCL4, PO3, PO2, PCLOUD_FRAC, PQ_LIQUID, PQ_ICE, PQ_SNOW, ZRE_LIQUID_UM, ZRE_ICE_UM, PAEROSOL_OLD, PAEROSOL, PFLUX_SW, PFLUX_LW, PFLUX_SW_CLEAR, PFLUX_LW_CLEAR, PFLUX_SW_DN, PFLUX_LW_DN, PFLUX_SW_DN_CLEAR, PFLUX_LW_DN_CLEAR, PFLUX_SW_UP, PFLUX_LW_UP, PFLUX_SW_UP_CLEAR, PFLUX_LW_UP_CLEAR, PFLUX_DIR, PFLUX_DIR_CLEAR, PFLUX_DIR_INTO_SUN, PFLUX_UV, PFLUX_PAR, PFLUX_PAR_CLEAR, PEMIS_OUT, PLWDERIVATIVE, PSWDIFFUSEBAND, PSWDIRECTBAND, ecrad_cloud_cover_sw)

! ok AI ATTENTION a voir avec JL

Arguments

Type IntentOptional Attributes Name
integer(kind=JPIM), intent(in) :: KIDIA
integer(kind=JPIM), intent(in) :: KFDIA
integer(kind=JPIM), intent(in) :: KLON
integer(kind=JPIM), intent(in) :: KLEV
integer(kind=JPIM), intent(in) :: KAEROSOL
integer(kind=JPIM), intent(in) :: NSW
character(len=512), intent(in) :: namelist_file
logical, intent(in) :: ok_3Deffect
logical, intent(in) :: debut
logical, intent(in) :: ok_volcan
integer(kind=JPIM), intent(in) :: flag_aerosol_strat
integer(kind=JPIM), intent(in) :: IDAY
real(kind=JPRB), intent(in) :: TIME
real(kind=JPRB), intent(in) :: PSOLAR_IRRADIANCE
real(kind=JPRB), intent(in) :: PMU0(KLON)
real(kind=JPRB), intent(in) :: PTEMPERATURE_SKIN(KLON)
real(kind=JPRB), intent(in) :: PALBEDO_DIF(KLON,NSW)
real(kind=JPRB), intent(in) :: PALBEDO_DIR(KLON,NSW)
real(kind=JPRB), intent(in) :: PEMIS(KLON)
real(kind=JPRB), intent(in) :: PEMIS_WINDOW(KLON)
real(kind=JPRB), intent(in) :: PGELAM(KLON)
real(kind=JPRB), intent(in) :: PGEMU(KLON)
real(kind=JPRB), intent(in) :: PPRESSURE_H(KLON,KLEV+1)
real(kind=JPRB), intent(in) :: PTEMPERATURE_H(KLON,KLEV+1)
real(kind=JPRB), intent(in) :: PQ(KLON,KLEV)
real(kind=JPRB), intent(in) :: PQSAT(KLON,KLEV)
real(kind=JPRB), intent(in) :: PCO2
real(kind=JPRB), intent(in) :: PCH4
real(kind=JPRB), intent(in) :: PN2O
real(kind=JPRB), intent(in) :: PNO2
real(kind=JPRB), intent(in) :: PCFC11
real(kind=JPRB), intent(in) :: PCFC12
real(kind=JPRB), intent(in) :: PHCFC22
real(kind=JPRB), intent(in) :: PCCL4
real(kind=JPRB), intent(in) :: PO3(KLON,KLEV)
real(kind=JPRB), intent(in) :: PO2
real(kind=JPRB), intent(in) :: PCLOUD_FRAC(KLON,KLEV)
real(kind=JPRB), intent(in) :: PQ_LIQUID(KLON,KLEV)
real(kind=JPRB), intent(in) :: PQ_ICE(KLON,KLEV)
real(kind=JPRB), intent(in) :: PQ_SNOW(KLON,KLEV)
real(kind=JPRB) :: ZRE_LIQUID_UM(KLON,KLEV)
real(kind=JPRB) :: ZRE_ICE_UM(KLON,KLEV)
real(kind=JPRB), intent(in) :: PAEROSOL_OLD(KLON,6,KLEV)
real(kind=JPRB), intent(in) :: PAEROSOL(KLON,KLEV,KAEROSOL)
real(kind=JPRB), intent(out) :: PFLUX_SW(KLON,KLEV+1)
real(kind=JPRB), intent(out) :: PFLUX_LW(KLON,KLEV+1)
real(kind=JPRB), intent(out) :: PFLUX_SW_CLEAR(KLON,KLEV+1)
real(kind=JPRB), intent(out) :: PFLUX_LW_CLEAR(KLON,KLEV+1)

** DN and UP flux on half-levels (W m-2)

real(kind=JPRB), intent(out) :: PFLUX_SW_DN(KLON,KLEV+1)
real(kind=JPRB), intent(out) :: PFLUX_LW_DN(KLON,KLEV+1)
real(kind=JPRB), intent(out) :: PFLUX_SW_DN_CLEAR(KLON,KLEV+1)
real(kind=JPRB), intent(out) :: PFLUX_LW_DN_CLEAR(KLON,KLEV+1)
real(kind=JPRB), intent(out) :: PFLUX_SW_UP(KLON,KLEV+1)
real(kind=JPRB), intent(out) :: PFLUX_LW_UP(KLON,KLEV+1)
real(kind=JPRB), intent(out) :: PFLUX_SW_UP_CLEAR(KLON,KLEV+1)
real(kind=JPRB), intent(out) :: PFLUX_LW_UP_CLEAR(KLON,KLEV+1)
real(kind=JPRB), intent(out) :: PFLUX_DIR(KLON,KLEV+1)
real(kind=JPRB), intent(out) :: PFLUX_DIR_CLEAR(KLON,KLEV+1)
real(kind=JPRB), intent(out) :: PFLUX_DIR_INTO_SUN(KLON)
real(kind=JPRB), intent(out) :: PFLUX_UV(KLON)
real(kind=JPRB), intent(out) :: PFLUX_PAR(KLON)
real(kind=JPRB), intent(out) :: PFLUX_PAR_CLEAR(KLON)
real(kind=JPRB), intent(out) :: PEMIS_OUT(KLON)
real(kind=JPRB), intent(out) :: PLWDERIVATIVE(KLON,KLEV+1)
real(kind=JPRB), intent(out) :: PSWDIFFUSEBAND(KLON,NSW)
real(kind=JPRB), intent(out) :: PSWDIRECTBAND(KLON,NSW)
real(kind=JPRB), intent(out) :: ecrad_cloud_cover_sw(KLON)