Changeset 4171 for LMDZ6/branches/LMDZ-ECRAD/libf/phylmd/rrtm
- Timestamp:
- Jun 17, 2022, 4:24:49 PM (3 years ago)
- Location:
- LMDZ6/branches/LMDZ-ECRAD
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ6/branches/LMDZ-ECRAD
- Property svn:mergeinfo changed
-
LMDZ6/branches/LMDZ-ECRAD/libf/phylmd/rrtm/abor1.intfb.h
r1990 r4171 1 1 INTERFACE 2 2 SUBROUTINE ABOR1(CDTEXT) 3 CHARACTER(LEN=*) :: CDTEXT3 CHARACTER(LEN=*), INTENT(IN) :: CDTEXT 4 4 END SUBROUTINE ABOR1 5 5 END INTERFACE -
LMDZ6/branches/LMDZ-ECRAD/libf/phylmd/rrtm/aeropt_6bands_rrtm.F90
r3480 r4171 318 318 ! Dust insoluble 319 319 0.894, 0.902, 0.937, 0.980, 0.993, 0.967, & 320 ! BC insoluble 320 ! BC insoluble 321 0.480, 0.469, 0.456, 0.427, 0.349, 0.196, & 322 ! POM insoluble 323 0.956, 0.965, 0.969, 0.953, 0.892, 0.826, & 324 ! Nitrate insoluble 325 1.000, 1.000, 1.000, 1.000, 0.999, 0.707 / 326 327 DATA cg_aeri_6bands/ & 328 ! Dust insoluble 329 0.756, 0.737, 0.713, 0.701, 0.696, 0.672, & 330 ! BC insoluble 321 331 0.820, 0.760, 0.695, 0.603, 0.469, 0.276, & 322 332 ! POM insoluble 323 333 0.687, 0.685, 0.673, 0.637, 0.553, 0.340, & 324 ! Nitrate insoluble325 1.000, 1.000, 1.000, 1.000, 0.999, 0.707 /326 327 DATA cg_aeri_6bands/ &328 ! Dust insoluble329 0.756, 0.737, 0.713, 0.701, 0.696, 0.672, &330 ! BC insoluble331 0.480, 0.469, 0.456, 0.427, 0.349, 0.196, &332 ! POM insoluble333 0.956, 0.965, 0.969, 0.953, 0.892, 0.826, &334 334 ! Nitrate insoluble 335 335 0.765, 0.754, 0.743, 0.737, 0.739, 0.651 / -
LMDZ6/branches/LMDZ-ECRAD/libf/phylmd/rrtm/readaerosol_optic_rrtm.F90
r3630 r4171 20 20 load_tmp8,load_tmp9,load_tmp10 21 21 22 USE infotrac_phy 22 USE infotrac_phy, ONLY: tracers, nqtot, nbtr 23 23 USE YOMCST 24 24 … … 91 91 integer :: id_ASBCM, id_ASPOMM, id_ASSO4M, id_ASMSAM, id_CSSO4M, id_CSMSAM, id_SSSSM 92 92 integer :: id_CSSSM, id_ASSSM, id_CIDUSTM, id_AIBCM, id_AIPOMM, id_ASNO3M, id_CSNO3M, id_CINO3M 93 INTEGER :: k, i 93 INTEGER :: k, i, iq, itr 94 94 95 95 !--air density … … 107 107 !--convert to ug m-3 unit for consistency with offline fields 108 108 ! 109 DO i=1,nbtr 110 SELECT CASE(trim(solsym(i))) 111 CASE ("ASBCM") 112 id_ASBCM = i 113 CASE ("ASPOMM") 114 id_ASPOMM = i 115 CASE ("ASSO4M") 116 id_ASSO4M = i 117 CASE ("ASMSAM") 118 id_ASMSAM = i 119 CASE ("CSSO4M") 120 id_CSSO4M = i 121 CASE ("CSMSAM") 122 id_CSMSAM = i 123 CASE ("SSSSM") 124 id_SSSSM = i 125 CASE ("CSSSM") 126 id_CSSSM = i 127 CASE ("ASSSM") 128 id_ASSSM = i 129 CASE ("CIDUSTM") 130 id_CIDUSTM = i 131 CASE ("AIBCM") 132 id_AIBCM = i 133 CASE ("AIPOMM") 134 id_AIPOMM = i 135 CASE ("ASNO3M") 136 id_ASNO3M = i 137 CASE ("CSNO3M") 138 id_CSNO3M = i 139 CASE ("CINO3M") 140 id_CINO3M = i 141 END SELECT 142 ENDDO 109 itr = 0 110 DO iq = 1,nqtot 111 IF(.NOT. tracers(iq)%isInPhysics) CYCLE 112 itr = itr+1 113 SELECT CASE(trim(tracers(iq)%name)) 114 CASE ("ASBCM"); id_ASBCM = itr 115 CASE ("ASPOMM"); id_ASPOMM = itr 116 CASE ("ASSO4M"); id_ASSO4M = itr 117 CASE ("ASMSAM"); id_ASMSAM = itr 118 CASE ("CSSO4M"); id_CSSO4M = itr 119 CASE ("CSMSAM"); id_CSMSAM = itr 120 CASE ("SSSSM"); id_SSSSM = itr 121 CASE ("CSSSM"); id_CSSSM = itr 122 CASE ("ASSSM"); id_ASSSM = itr 123 CASE ("CIDUSTM");id_CIDUSTM= itr 124 CASE ("AIBCM"); id_AIBCM = itr 125 CASE ("AIPOMM"); id_AIPOMM = itr 126 CASE ("ASNO3M"); id_ASNO3M = itr 127 CASE ("CSNO3M"); id_CSNO3M = itr 128 CASE ("CINO3M"); id_CINO3M = itr 129 END SELECT 130 END DO 143 131 144 132 bcsol(:,:) = tr_seri(:,:,id_ASBCM) *zrho(:,:)*1.e9 ! ASBCM -
LMDZ6/branches/LMDZ-ECRAD/libf/phylmd/rrtm/recmwf_aero.F90
r3479 r4171 36 36 & PTOPLWAIAERO,PSOLLWAIAERO,& 37 37 & PLWADAERO,& !--NL 38 !--ajout volmip 39 & volmip_solsw, flag_volc_surfstrat,& 38 40 !..end 39 41 & ok_ade, ok_aie, ok_volcan, flag_aerosol,flag_aerosol_strat,& … … 259 261 REAL(KIND=JPRB) ,INTENT(OUT) :: PFLCCDN(KPROMA,KLEV+1) ! LW clear sky clean (no aerosol) flux down 260 262 REAL(KIND=JPRB) ,INTENT(OUT) :: PFLCCUP(KPROMA,KLEV+1) ! LW clear sky clean (no aerosol) flux up 263 !--ajout VOLMIP 264 REAL(KIND=JPRB) ,INTENT(OUT) :: volmip_solsw(KPROMA) ! SW clear sky in the case of VOLMIP 265 INTEGER, INTENT(IN) :: flag_volc_surfstrat !--VOlMIP Modif 261 266 262 267 ! ==== COMPUTED IN RADITE === … … 795 800 ENDIF 796 801 802 !--VolMIP Strat/Surf 803 !--only ok_ade + ok_aie case treated 804 IF (ok_ade.AND.ok_aie.AND.ok_volcan) THEN 805 !--in this case the fluxes used for the heating rates come from case 4 but SW surface radiation is kept from case 2 806 IF (flag_volc_surfstrat.EQ.2) THEN ! STRAT HEATING 807 volmip_solsw(:)= ZFSDN_AERO(:,1,2)-ZFSUP_AERO(:,1,2) 808 ELSEIF (flag_volc_surfstrat.EQ.1) THEN ! SURF COOLING 809 !--in this case the fluxes used for the heating rates come from case 2 but SW surface radiation is kept from case 4 810 PFSUP(:,:) = ZFSUP_AERO(:,:,2) 811 PFSDN(:,:) = ZFSDN_AERO(:,:,2) 812 PFSCUP(:,:) = ZFSUP0_AERO(:,:,2) 813 PFSCDN(:,:) = ZFSDN0_AERO(:,:,2) 814 PFLUX(:,1,:) = LWUP_AERO(:,:,2) 815 PFLUX(:,2,:) = LWDN_AERO(:,:,2) 816 PFLUC(:,1,:) = LWDN0_AERO(:,:,2) 817 PFLUC(:,2,:) = LWDN0_AERO(:,:,2) 818 volmip_solsw(:)= ZFSDN_AERO(:,1,4)-ZFSUP_AERO(:,1,4) 819 ENDIF 820 ENDIF 821 !--End VolMIP Strat/Surf 822 797 823 IF (swaerofree_diag) THEN 798 824 ! copy shortwave clear-sky clean (no aerosol) case -
LMDZ6/branches/LMDZ-ECRAD/libf/phylmd/rrtm/tpm_fft.F90
r2010 r4171 7 7 8 8 TYPE FFT_TYPE 9 REAL(KIND=JPRB) , POINTER:: TRIGS(:,:)10 INTEGER(KIND=JPIM), POINTER:: NFAX(:,:)9 REAL(KIND=JPRB) ,ALLOCATABLE :: TRIGS(:,:) 10 INTEGER(KIND=JPIM),ALLOCATABLE :: NFAX(:,:) 11 11 END TYPE FFT_TYPE 12 12
Note: See TracChangeset
for help on using the changeset viewer.