5 mass_solu_aero, mass_solu_aero_pi, &
6 tau_aero, piz_aero, cg_aero, &
7 tausum_aero, tau3d_aero )
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
23 LOGICAL,
INTENT(IN) :: debut
24 LOGICAL,
INTENT(IN) :: new_aod
25 INTEGER,
INTENT(IN) :: flag_aerosol
26 INTEGER,
INTENT(IN) :: itap
27 REAL,
INTENT(IN) :: rjourvrai
29 REAL,
DIMENSION(klon,klev),
INTENT(IN) ::
pplay
30 REAL,
DIMENSION(klon,klev+1),
INTENT(IN) :: paprs
31 REAL,
DIMENSION(klon,klev),
INTENT(IN) :: t_seri
32 REAL,
DIMENSION(klon,klev),
INTENT(IN) :: rhcl
33 REAL,
DIMENSION(klev),
INTENT(IN) ::
presnivs
37 REAL,
DIMENSION(klon,klev),
INTENT(OUT) :: mass_solu_aero
38 REAL,
DIMENSION(klon,klev),
INTENT(OUT) :: mass_solu_aero_pi
39 REAL,
DIMENSION(klon,klev,naero_grp,nbands),
INTENT(OUT) :: tau_aero
40 REAL,
DIMENSION(klon,klev,naero_grp,nbands),
INTENT(OUT) :: piz_aero
41 REAL,
DIMENSION(klon,klev,naero_grp,nbands),
INTENT(OUT) :: cg_aero
42 REAL,
DIMENSION(klon,nwave,naero_spc),
INTENT(OUT) :: tausum_aero
43 REAL,
DIMENSION(klon,klev,nwave,naero_spc),
INTENT(OUT) :: tau3d_aero
47 REAL,
DIMENSION(klon) :: aerindex
48 REAL,
DIMENSION(klon,klev) :: sulfate
49 REAL,
DIMENSION(klon,klev) :: bcsol
50 REAL,
DIMENSION(klon,klev) :: bcins
51 REAL,
DIMENSION(klon,klev) :: pomsol
52 REAL,
DIMENSION(klon,klev) :: pomins
53 REAL,
DIMENSION(klon,klev) :: cidust
54 REAL,
DIMENSION(klon,klev) :: sscoarse
55 REAL,
DIMENSION(klon,klev) :: sssupco
56 REAL,
DIMENSION(klon,klev) :: ssacu
57 REAL,
DIMENSION(klon,klev) :: sulfate_pi
58 REAL,
DIMENSION(klon,klev) :: bcsol_pi
59 REAL,
DIMENSION(klon,klev) :: bcins_pi
60 REAL,
DIMENSION(klon,klev) :: pomsol_pi
61 REAL,
DIMENSION(klon,klev) :: pomins_pi
62 REAL,
DIMENSION(klon,klev) :: cidust_pi
63 REAL,
DIMENSION(klon,klev) :: sscoarse_pi
64 REAL,
DIMENSION(klon,klev) :: sssupco_pi
65 REAL,
DIMENSION(klon,klev) :: ssacu_pi
66 REAL,
DIMENSION(klon,klev) :: pdel
67 REAL,
DIMENSION(klon,klev,naero_spc) :: m_allaer
68 REAL,
DIMENSION(klon,klev,naero_spc) :: m_allaer_pi
78 IF ( flag_aerosol .EQ. 1 .OR. &
79 flag_aerosol .EQ. 6 )
THEN
81 CALL
readaerosol_interp(id_asso4m, itap,
pdtphys, rjourvrai, debut,
pplay, paprs, t_seri, sulfate, sulfate_pi,loadso4)
83 sulfate(:,:) = 0. ; sulfate_pi(:,:) = 0.
88 IF ( flag_aerosol .EQ. 2 .OR. &
89 flag_aerosol .EQ. 6 )
THEN
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(:)
96 bcsol(:,:) = 0. ; bcsol_pi(:,:) = 0.
97 bcins(:,:) = 0. ; bcins_pi(:,:) = 0.
103 IF ( flag_aerosol .EQ. 3 .OR. &
104 flag_aerosol .EQ. 6 )
THEN
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(:)
110 pomsol(:,:) = 0. ; pomsol_pi(:,:) = 0.
111 pomins(:,:) = 0. ; pomins_pi(:,:) = 0.
117 IF (flag_aerosol .EQ. 4 .OR. &
118 flag_aerosol .EQ. 6 )
THEN
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(:)
125 sscoarse(:,:) = 0. ; sscoarse_pi(:,:) = 0.
126 ssacu(:,:) = 0. ; ssacu_pi(:,:) = 0.
127 sssupco(:,:) = 0. ; sssupco_pi = 0.
132 IF (flag_aerosol .EQ. 5 .OR. &
133 flag_aerosol .EQ. 6 )
THEN
135 CALL
readaerosol_interp(id_cidustm, itap,
pdtphys, rjourvrai, debut,
pplay, paprs, t_seri, cidust, cidust_pi, loaddust)
138 cidust(:,:) = 0. ; cidust_pi(:,:) = 0.
145 m_allaer(:,:,id_asbcm) = bcsol(:,:)
146 m_allaer(:,:,id_aspomm) = pomsol(:,:)
147 m_allaer(:,:,id_asso4m) = sulfate(:,:)
148 m_allaer(:,:,id_csso4m) = 0.
149 m_allaer(:,:,id_ssssm) = sssupco(:,:)
150 m_allaer(:,:,id_csssm) = sscoarse(:,:)
151 m_allaer(:,:,id_asssm) = ssacu(:,:)
152 m_allaer(:,:,id_cidustm)= cidust(:,:)
153 m_allaer(:,:,id_aibcm) = bcins(:,:)
154 m_allaer(:,:,id_aipomm) = pomins(:,:)
157 m_allaer_pi(:,:,1) = bcsol_pi(:,:)
158 m_allaer_pi(:,:,2) = pomsol_pi(:,:)
159 m_allaer_pi(:,:,3) = sulfate_pi(:,:)
160 m_allaer_pi(:,:,4) = 0.
161 m_allaer_pi(:,:,5) = sssupco_pi(:,:)
162 m_allaer_pi(:,:,6) = sscoarse_pi(:,:)
163 m_allaer_pi(:,:,7) = ssacu_pi(:,:)
164 m_allaer_pi(:,:,8) = cidust_pi(:,:)
165 m_allaer_pi(:,:,9) = bcins_pi(:,:)
166 m_allaer_pi(:,:,10) = pomins_pi(:,:)
171 mass_solu_aero(:,:) = sulfate(:,:) + bcsol(:,:) + pomsol(:,:)
173 mass_solu_aero_pi(:,:) = sulfate_pi(:,:) + bcsol_pi(:,:) + pomsol_pi(:,:)
182 pdel(
i,
k) = paprs(
i,
k) - paprs(
i,
k+1)
192 pdel, m_allaer,
pdtphys, rhcl, &
193 tau_aero, piz_aero, cg_aero, &
194 m_allaer_pi, flag_aerosol, &
201 flag_aerosol,
pplay, t_seri, &
206 tau_aero(:,:,id_asso4m,:), piz_aero(:,:,id_asso4m,:), cg_aero(:,:,id_asso4m,:), aerindex)
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