@@ -31,13 +31,13 @@ module aoa_tracers
3131 integer , parameter :: ncnst= 3 ! number of constituents implemented by this module
3232
3333 ! constituent names
34- character (len= 6 ), parameter :: c_names(ncnst) = (/ ' AOAMF ' , ' HORZ ' , ' VERT ' / )
34+ character (len= 4 ), parameter :: c_names(ncnst) = (/ ' AOA1 ' , ' HORZ' , ' VERT' / )
3535
3636 ! constituent source/sink names
37- character (len= 8 ), parameter :: src_names(ncnst) = (/ ' AOAMFSRC ' , ' HORZSRC ' , ' VERTSRC ' / )
37+ character (len= 7 ), parameter :: src_names(ncnst) = (/ ' AOA1SRC ' , ' HORZSRC' , ' VERTSRC' / )
3838
3939 integer :: ifirst = - 1 ! global index of first constituent
40- integer :: ixaoa = - 1 ! global index for AOAMFSRC tracer
40+ integer :: ixaoa = - 1 ! global index for AOA1SRC tracer
4141 integer :: ixht = - 1 ! global index for HORZ tracer
4242 integer :: ixvt = - 1 ! global index for VERT tracer
4343
@@ -132,12 +132,12 @@ subroutine aoa_tracers_register
132132 if (.not. aoa_tracers_flag) return
133133
134134 call cnst_add(c_names(1 ), mwdry, cpair, 0._r8 , ixaoa, readiv= aoa_read_from_ic_file, &
135- longname= ' mixing ratio LB tracer' )
135+ longname= ' mixing ratio LB tracer' , cam_outfld = .false. )
136136
137137 call cnst_add(c_names(2 ), mwdry, cpair, 1._r8 , ixht, readiv= aoa_read_from_ic_file, &
138- longname= ' horizontal tracer' )
138+ longname= ' horizontal tracer' , cam_outfld = .false. )
139139 call cnst_add(c_names(3 ), mwdry, cpair, 0._r8 , ixvt, readiv= aoa_read_from_ic_file, &
140- longname= ' vertical tracer' )
140+ longname= ' vertical tracer' , cam_outfld = .false. )
141141
142142 ifirst = ixaoa
143143
@@ -324,6 +324,8 @@ subroutine aoa_tracers_timestep_tend(state, ptend, dt)
324324 real (r8 ), parameter :: mmr0 = 1.0e-6_r8 ! initial lower boundary mmr
325325 real (r8 ), parameter :: per_yr = 0.02_r8 ! fractional increase per year
326326
327+ real (r8 ) :: mmr_out(pcols,pver,ncnst)
328+
327329 !- -----------------------------------------------------------------
328330
329331 teul = .5_r8 * dt/ (86400._r8 * treldays) ! 1/2 for the semi-implicit scheme if dt=time step
@@ -345,7 +347,7 @@ subroutine aoa_tracers_timestep_tend(state, ptend, dt)
345347 lchnk = state% lchnk
346348 ncol = state% ncol
347349
348- ! AOAMF
350+ ! AOA1
349351 xmmr = mmr0* (1._r8 + per_yr* years)
350352 ptend% q(1 :ncol,pver,ixaoa) = (xmmr - state% q(1 :ncol,pver,ixaoa)) / dt
351353
@@ -371,6 +373,15 @@ subroutine aoa_tracers_timestep_tend(state, ptend, dt)
371373 call outfld (src_names(2 ), ptend% q(:,:,ixht), pcols, lchnk)
372374 call outfld (src_names(3 ), ptend% q(:,:,ixvt), pcols, lchnk)
373375
376+ ! output mixing ratios to history
377+ mmr_out(:ncol,:,1 ) = state% q(:ncol,:,ixaoa) + dt* ptend% q(1 :ncol,:,ixaoa)
378+ mmr_out(:ncol,:,2 ) = state% q(:ncol,:,ixht) + dt* ptend% q(1 :ncol,:,ixht)
379+ mmr_out(:ncol,:,3 ) = state% q(:ncol,:,ixvt) + dt* ptend% q(1 :ncol,:,ixvt)
380+
381+ call outfld (c_names(1 ), mmr_out(:,:,1 ), pcols, lchnk)
382+ call outfld (c_names(2 ), mmr_out(:,:,2 ), pcols, lchnk)
383+ call outfld (c_names(3 ), mmr_out(:,:,3 ), pcols, lchnk)
384+
374385 end subroutine aoa_tracers_timestep_tend
375386
376387! ===========================================================================
@@ -392,7 +403,7 @@ subroutine init_cnst_3d(m, latvals, lonvals, mask, q)
392403
393404 if (m == ixaoa) then
394405
395- ! AOAMF
406+ ! AOA1
396407 q(:,:) = 0.0_r8
397408
398409 else if (m == ixht) then
0 commit comments