*** RECMWF - METEO-FRANCE RADIATION INTERFACE TO ECMWF RADIATION SCHEME
INTERFACE. ----------
0.1 ARGUMENTS. ----------
INCLUDE "clesphys.h"
1. PREPARATORY WORK
----------------
--OB 1.0 INITIALIZATIONS --------------
1.1 LOCAL CONSTANTS
---------------
2.1 FULL-LEVEL QUANTITIES
2.2 HALF-LEVEL QUANTITIES
2.3 QUANTITIES AT BOUNDARIES
3.1 SOLAR ZENITH ANGLE IS EARTH'S CURVATURE
CORRECTED
!!! A REVOIR MPL 20091201: enleve cette correction pour comparer a AR4 4.1 CALL TO ACTUAL RADIATION SCHEME
----now we make multiple calls to the radiation according to which ----aerosol flags are on
SAVE VARIABLES IN INTERIM VARIABLES A LA SW_AEROAR4 SAVE VARIABLES IN INTERIM VARIABLES A LA SW_AEROAR4 SAVE VARIABLES IN INTERIM VARIABLES A LA SW_AEROAR4 SAVE VARIABLES IN INTERIM VARIABLES A LA SW_AEROAR4 SAVE VARIABLES IN INTERIM VARIABLES A LA SW_AEROAR4 4.2 TRANSFORM FLUXES TO MODEL HISTORICAL VARIABLES
5.1 STORAGE OF TRANSMISSIVITY AND EMISSIVITIES
IN KPROMA-LONG ARRAYS
7.3 RECONSTRUCT FLUXES FOR DIAGNOSTICS
8.0 DIAGNOSTICS ---Now we copy back the correct fields to proceed to the next timestep
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer(kind=JPIM), | intent(in) | :: | KST | |||
| integer(kind=JPIM), | intent(in) | :: | KEND | |||
| integer(kind=JPIM), | intent(in) | :: | KPROMA | |||
| integer(kind=JPIM) | :: | KTDIA | ||||
| integer(kind=JPIM), | intent(in) | :: | KLEV | |||
| integer(kind=JPIM), | intent(in) | :: | KMODE | |||
| real(kind=JPRB), | intent(in) | :: | PALBD(KPROMA,NSW) | |||
| real(kind=JPRB), | intent(in) | :: | PALBP(KPROMA,NSW) | |||
| real(kind=JPRB), | intent(in) | :: | PAPRS(KPROMA,KLEV+1) | |||
| real(kind=JPRB), | intent(in) | :: | PAPRSF(KPROMA,KLEV) | |||
| real(kind=JPRB), | intent(in) | :: | PCCO2 | |||
| real(kind=JPRB), | intent(in) | :: | PCLFR(KPROMA,KLEV) | |||
| real(kind=JPRB), | intent(in) | :: | PQO3(KPROMA,KLEV) | |||
| real(kind=JPRB), | intent(in) | :: | PAER(KPROMA,KLEV,6) | |||
| real(kind=JPRB), | intent(in) | :: | PDP(KPROMA,KLEV) | |||
| real(kind=JPRB), | intent(in) | :: | PEMIS(KPROMA) | |||
| real(kind=JPRB), | intent(in) | :: | PMU0(KPROMA) | |||
| real(kind=JPRB), | intent(in) | :: | PQ(KPROMA,KLEV) | |||
| real(kind=JPRB), | intent(in) | :: | PQS(KPROMA,KLEV) | |||
| real(kind=JPRB), | intent(in) | :: | PQIWP(KPROMA,KLEV) | |||
| real(kind=JPRB), | intent(in) | :: | PQLWP(KPROMA,KLEV) | |||
| real(kind=JPRB), | intent(in) | :: | PSLM(KPROMA) | |||
| real(kind=JPRB), | intent(in) | :: | PT(KPROMA,KLEV) | |||
| real(kind=JPRB), | intent(in) | :: | PTS(KPROMA) | |||
| real(kind=JPRB), | intent(in) | :: | PREF_LIQ(KPROMA,KLEV) | |||
| real(kind=JPRB), | intent(in) | :: | PREF_ICE(KPROMA,KLEV) | |||
| real(kind=JPRB), | intent(in) | :: | PREF_LIQ_PI(KPROMA,KLEV) | |||
| real(kind=JPRB), | intent(in) | :: | PREF_ICE_PI(KPROMA,KLEV) | |||
| real(kind=JPRB), | intent(out) | :: | PEMTD(KPROMA,KLEV+1) | |||
| real(kind=JPRB), | intent(out) | :: | PEMTU(KPROMA,KLEV+1) | |||
| real(kind=JPRB), | intent(out) | :: | PTRSO(KPROMA,KLEV+1) | |||
| real(kind=JPRB), | intent(inout) | :: | PTH(KPROMA,KLEV+1) | |||
| real(kind=JPRB), | intent(out) | :: | PCTRSO(KPROMA,2) | |||
| real(kind=JPRB), | intent(out) | :: | PCEMTR(KPROMA,2) | |||
| real(kind=JPRB), | intent(out) | :: | PTRSOD(KPROMA) | |||
| real(kind=JPRB), | intent(out) | :: | PLWFC(KPROMA,2) | |||
| real(kind=JPRB), | intent(out) | :: | PLWFT(KPROMA,KLEV+1) | |||
| real(kind=JPRB), | intent(out) | :: | PSWFC(KPROMA,2) | |||
| real(kind=JPRB), | intent(out) | :: | PSWFT(KPROMA,KLEV+1) | |||
| real(kind=JPRB), | intent(out) | :: | PSFSWDIR(KPROMA,NSW) | |||
| real(kind=JPRB), | intent(out) | :: | PSFSWDIF(KPROMA,NSW) | |||
| real(kind=JPRB), | intent(out) | :: | PFSDNN(KPROMA) | |||
| real(kind=JPRB), | intent(out) | :: | PFSDNV(KPROMA) | |||
| real(kind=JPRB), | intent(in) | :: | PPIZA_TOT(KPROMA,KLEV,NSW) | |||
| real(kind=JPRB), | intent(in) | :: | PCGA_TOT(KPROMA,KLEV,NSW) | |||
| real(kind=JPRB), | intent(in) | :: | PTAU_TOT(KPROMA,KLEV,NSW) | |||
| real(kind=JPRB), | intent(in) | :: | PPIZA_NAT(KPROMA,KLEV,NSW) | |||
| real(kind=JPRB), | intent(in) | :: | PCGA_NAT(KPROMA,KLEV,NSW) | |||
| real(kind=JPRB), | intent(in) | :: | PTAU_NAT(KPROMA,KLEV,NSW) | |||
| real(kind=JPRB), | intent(in) | :: | PTAU_LW_TOT(KPROMA,KLEV,NLW) | |||
| real(kind=JPRB), | intent(in) | :: | PTAU_LW_NAT(KPROMA,KLEV,NLW) | |||
| real(kind=JPRB), | intent(out) | :: | PFLUX(KPROMA,2,KLEV+1) | |||
| real(kind=JPRB), | intent(out) | :: | PFLUC(KPROMA,2,KLEV+1) | |||
| real(kind=JPRB), | intent(out) | :: | PTOAB(KPROMA,NLW) | |||
| real(kind=JPRB), | intent(out) | :: | PTOACB(KPROMA,NLW) | |||
| real(kind=JPRB), | intent(out) | :: | PFSDN(KPROMA,KLEV+1) | |||
| real(kind=JPRB), | intent(out) | :: | PFSUP(KPROMA,KLEV+1) | |||
| real(kind=JPRB), | intent(out) | :: | PFSCDN(KPROMA,KLEV+1) | |||
| real(kind=JPRB), | intent(out) | :: | PFSCUP(KPROMA,KLEV+1) | |||
| real(kind=JPRB), | intent(out) | :: | PFSCCDN(KPROMA,KLEV+1) | |||
| real(kind=JPRB), | intent(out) | :: | PFSCCUP(KPROMA,KLEV+1) | |||
| real(kind=JPRB), | intent(out) | :: | PFLCCDN(KPROMA,KLEV+1) | |||
| real(kind=JPRB), | intent(out) | :: | PFLCCUP(KPROMA,KLEV+1) | |||
| real(kind=JPRB), | intent(out) | :: | PTOPSWADAERO(KPROMA) | |||
| real(kind=JPRB), | intent(out) | :: | PSOLSWADAERO(KPROMA) | |||
| real(kind=JPRB), | intent(out) | :: | PTOPSWAD0AERO(KPROMA) | |||
| real(kind=JPRB), | intent(out) | :: | PSOLSWAD0AERO(KPROMA) | |||
| real(kind=JPRB), | intent(out) | :: | PTOPSWAIAERO(KPROMA) | |||
| real(kind=JPRB), | intent(out) | :: | PSOLSWAIAERO(KPROMA) | |||
| real(kind=JPRB), | intent(out) | :: | PTOPSWCFAERO(KPROMA,3) | |||
| real(kind=JPRB), | intent(out) | :: | PSOLSWCFAERO(KPROMA,3) | |||
| real(kind=JPRB), | intent(out) | :: | PSWADAERO(KPROMA,KLEV+1) | |||
| real(kind=JPRB), | intent(out) | :: | PTOPLWADAERO(KPROMA) | |||
| real(kind=JPRB), | intent(out) | :: | PSOLLWADAERO(KPROMA) | |||
| real(kind=JPRB), | intent(out) | :: | PTOPLWAD0AERO(KPROMA) | |||
| real(kind=JPRB), | intent(out) | :: | PSOLLWAD0AERO(KPROMA) | |||
| real(kind=JPRB), | intent(out) | :: | PTOPLWAIAERO(KPROMA) | |||
| real(kind=JPRB), | intent(out) | :: | PSOLLWAIAERO(KPROMA) | |||
| real(kind=JPRB), | intent(out) | :: | PLWADAERO(KPROMA,KLEV+1) | |||
| real(kind=JPRB), | intent(out) | :: | volmip_solsw(KPROMA) | |||
| integer, | intent(in) | :: | flag_volc_surfstrat |
0.2 LOCAL ARRAYS. ------------- |
||
| logical, | intent(in) | :: | ok_ade | |||
| logical, | intent(in) | :: | ok_aie | |||
| logical, | intent(in) | :: | ok_volcan | |||
| integer, | intent(in) | :: | flag_aerosol | |||
| logical, | intent(in) | :: | flag_aerosol_strat | |||
| logical, | intent(in) | :: | flag_aer_feedback |