- Timestamp:
- Apr 13, 2010, 5:12:56 PM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ4/branches/LMDZ4V5.0-dev/libf/phylmd/readaerosol_optic.F90
r1279 r1347 14 14 USE dimphy 15 15 USE aero_mod 16 USE phys_local_var_mod, only: sconcso4,sconcoa,sconcbc,sconcss,sconcdust, & 17 concso4,concoa,concbc,concss,concdust,loadso4,loadoa,loadbc,loadss,loaddust, & 18 load_tmp1,load_tmp2,load_tmp3,load_tmp4,load_tmp5,load_tmp6,load_tmp7 16 19 IMPLICIT NONE 17 20 … … 76 79 flag_aerosol .EQ. 6 ) THEN 77 80 78 CALL readaerosol_interp(id_ASSO4M, itap, pdtphys, rjourvrai, debut, pplay, paprs, t_seri, sulfate, sulfate_pi )81 CALL readaerosol_interp(id_ASSO4M, itap, pdtphys, rjourvrai, debut, pplay, paprs, t_seri, sulfate, sulfate_pi,loadso4) 79 82 ELSE 80 83 sulfate(:,:) = 0. ; sulfate_pi(:,:) = 0. 84 loadso4=0. 81 85 END IF 82 86 … … 86 90 87 91 ! Get bc aerosol distribution 88 CALL readaerosol_interp(id_ASBCM, itap, pdtphys, rjourvrai, debut, pplay, paprs, t_seri, bcsol, bcsol_pi ) 89 CALL readaerosol_interp(id_AIBCM, itap, pdtphys, rjourvrai, debut, pplay, paprs, t_seri, bcins, bcins_pi ) 92 CALL readaerosol_interp(id_ASBCM, itap, pdtphys, rjourvrai, debut, pplay, paprs, t_seri, bcsol, bcsol_pi, load_tmp1 ) 93 CALL readaerosol_interp(id_AIBCM, itap, pdtphys, rjourvrai, debut, pplay, paprs, t_seri, bcins, bcins_pi, load_tmp2 ) 94 loadbc(:)=load_tmp1(:)+load_tmp2(:) 90 95 ELSE 91 96 bcsol(:,:) = 0. ; bcsol_pi(:,:) = 0. 92 97 bcins(:,:) = 0. ; bcins_pi(:,:) = 0. 98 loadbc=0. 93 99 END IF 94 100 … … 98 104 flag_aerosol .EQ. 6 ) THEN 99 105 100 CALL readaerosol_interp(id_ASPOMM, itap, pdtphys, rjourvrai, debut, pplay, paprs, t_seri, pomsol, pomsol_pi) 101 CALL readaerosol_interp(id_AIPOMM, itap, pdtphys, rjourvrai, debut, pplay, paprs, t_seri, pomins, pomins_pi) 106 CALL readaerosol_interp(id_ASPOMM, itap, pdtphys, rjourvrai, debut, pplay, paprs, t_seri, pomsol, pomsol_pi, load_tmp3) 107 CALL readaerosol_interp(id_AIPOMM, itap, pdtphys, rjourvrai, debut, pplay, paprs, t_seri, pomins, pomins_pi, load_tmp4) 108 loadoa(:)=load_tmp3(:)+load_tmp4(:) 102 109 ELSE 103 110 pomsol(:,:) = 0. ; pomsol_pi(:,:) = 0. 104 111 pomins(:,:) = 0. ; pomins_pi(:,:) = 0. 112 loadoa=0. 105 113 END IF 106 114 … … 110 118 flag_aerosol .EQ. 6 ) THEN 111 119 112 CALL readaerosol_interp(id_SSSSM ,itap, pdtphys, rjourvrai, debut, pplay, paprs, t_seri, sssupco, sssupco_pi )113 CALL readaerosol_interp(id_CSSSM ,itap, pdtphys, rjourvrai, debut, pplay, paprs, t_seri, sscoarse,sscoarse_pi )114 CALL readaerosol_interp(id_ASSSM ,itap, pdtphys, rjourvrai, debut, pplay, paprs, t_seri, ssacu, ssacu_pi )115 120 CALL readaerosol_interp(id_SSSSM ,itap, pdtphys, rjourvrai, debut, pplay, paprs, t_seri, sssupco, sssupco_pi, load_tmp5) 121 CALL readaerosol_interp(id_CSSSM ,itap, pdtphys, rjourvrai, debut, pplay, paprs, t_seri, sscoarse,sscoarse_pi, load_tmp6) 122 CALL readaerosol_interp(id_ASSSM ,itap, pdtphys, rjourvrai, debut, pplay, paprs, t_seri, ssacu, ssacu_pi, load_tmp7) 123 loadss(:)=load_tmp5(:)+load_tmp6(:)+load_tmp7(:) 116 124 ELSE 117 125 sscoarse(:,:) = 0. ; sscoarse_pi(:,:) = 0. 118 126 ssacu(:,:) = 0. ; ssacu_pi(:,:) = 0. 119 127 sssupco(:,:) = 0. ; sssupco_pi = 0. 128 loadss=0. 120 129 ENDIF 121 130 … … 124 133 flag_aerosol .EQ. 6 ) THEN 125 134 126 CALL readaerosol_interp(id_CIDUSTM, itap, pdtphys, rjourvrai, debut, pplay, paprs, t_seri, cidust, cidust_pi )135 CALL readaerosol_interp(id_CIDUSTM, itap, pdtphys, rjourvrai, debut, pplay, paprs, t_seri, cidust, cidust_pi, loaddust) 127 136 128 137 ELSE 129 138 cidust(:,:) = 0. ; cidust_pi(:,:) = 0. 139 loaddust=0. 130 140 ENDIF 131 141 … … 198 208 END IF 199 209 210 211 ! Diagnostics calculation for CMIP5 protocol 212 sconcso4(:)=m_allaer(:,1,id_ASSO4M)*1.e-9 213 sconcoa(:)=(m_allaer(:,1,id_ASPOMM)+m_allaer(:,1,id_AIPOMM))*1.e-9 214 sconcbc(:)=(m_allaer(:,1,id_ASBCM)+m_allaer(:,1,id_AIBCM))*1.e-9 215 sconcss(:)=(m_allaer(:,1,id_ASSSM)+m_allaer(:,1,id_CSSSM)+m_allaer(:,1,id_SSSSM))*1.e-9 216 sconcdust(:)=m_allaer(:,1,id_CIDUSTM)*1.e-9 217 concso4(:,:)=m_allaer(:,:,id_ASSO4M)*1.e-9 218 concoa(:,:)=(m_allaer(:,:,id_ASPOMM)+m_allaer(:,:,id_AIPOMM))*1.e-9 219 concbc(:,:)=(m_allaer(:,:,id_ASBCM)+m_allaer(:,:,id_AIBCM))*1.e-9 220 concss(:,:)=(m_allaer(:,:,id_ASSSM)+m_allaer(:,:,id_CSSSM)+m_allaer(:,:,id_SSSSM))*1.e-9 221 concdust(:,:)=m_allaer(:,:,id_CIDUSTM)*1.e-9 222 223 200 224 END SUBROUTINE readaerosol_optic
Note: See TracChangeset
for help on using the changeset viewer.