Skip to content

Possible missing WRF integration for TEMPO IFA surface emissions and YSU aerosol mixing #2372

Description

@saneku

Description

I am testing aerosol-aware TEMPO in WRF using:

  • mp_physics = 88
  • tempo_aerosolaware = 1
  • TEMPO v3.1.1
  • climatological WFA/IFA initial and lateral boundary conditions
  • time-dependent surface aerosol tendencies through wrfqnainp_d01
  • YSU PBL (bl_pbl_physics = 1)

The WFA pathway appears to work, but IFA surface emissions and automatic PBL mixing may be missing from the WRF–TEMPO integration.

Namelist configuration

&time_control
 auxinput17_inname       = "wrfqnainp_d<domain>",
 auxinput17_interval     = 360,
 io_form_auxinput17      = 2,
/

&domains
 num_wif_levels          = 30,
 wif_input_opt           = 1,
/

&physics
 mp_physics              = 88,
 tempo_aerosolaware      = 1,
 tempo_hailaware         = 1,

 use_aero_icbc           = .true.,
 use_rap_aero_icbc       = .false.,

 aer_opt                 = 3,
 qna_update              = 1,

 bl_pbl_physics          = 1,
 scalar_pblmix           = 1,

 dust_emis               = 1,
/

### 1. IFA surface emissions are not applied by TEMPO

In phys/module_microphysics_driver.F, the TEMPO branch applies the WFA surface tendency:

if (present(qnwfa_curr) .and. present(qnwfa2d)) then
   call tempo_aerosol_surface_emissions( &
        dt=dt, nwfa=qnwfa_curr, nwfa2d=qnwfa2d, &
        ims=ims, ime=ime, jms=jms, jme=jme, &
        kms=kms, kme=kme, kts=kts)
endif

**There is no corresponding call that applies QNIFA2D to QNIFA.**

This means that qna_update=1 can read QNIFA2D from wrfqnainp_d01, but the tendency does not appear to be used by TEMPO.

Would it be appropriate to add an analogous call such as:

if (present(qnifa_curr) .and. present(qnifa2d)) then
   call tempo_aerosol_surface_emissions( &
        dt=dt, nwfa=qnifa_curr, nwfa2d=qnifa2d, &
        ims=ims, ime=ime, jms=jms, jme=jme, &
        kms=kms, kme=kme, kts=kts)
endif

### 2. Online dust emission is restricted to mp_physics=28

The meteorology-dependent dust-emission routine in dyn_em/solve_em.F is currently guarded by:

IF (config_flags%dust_emis == 1 .AND. &
    config_flags%mp_physics == thompsonaero) THEN

   CALL bulk_dust_emis(..., grid%qnifa2d, ...)
ENDIF

Therefore, dust_emis=1 calculates QNIFA2D only for mp_physics=28, not for aerosol-aware TEMPO.

Would it be physically and technically appropriate to extend this condition to:

IF (config_flags%dust_emis == 1 .AND.                       &
   (config_flags%mp_physics == thompsonaero .OR.            &
   (config_flags%mp_physics == TEMPO .AND.                  &
    config_flags%tempo_aerosolaware == 1))) THEN

Together with applying QNIFA2D in the TEMPO driver, this would provide meteorology-dependent online dust/IFA
emissions for aerosol-aware TEMPO.

Is the current omission intentional, for example because TEMPO is expected to obtain IFA only from IC/BC or
externally generated emission files?

### 3. PBL mixing with YSU

QNWFA and QNIFA are prognostic WRF scalar fields. With YSU PBL scheme, they appear to receive PBL turbulent mixing only when: **scalar_pblmix = 1**

The WRF consistency checks automatically enable scalar_pblmix for Thompson aerosol-aware microphysics, but
aerosol-aware TEMPO is not included in that check.

Because the default is scalar_pblmix=0, a TEMPO simulation using YSU may transport QNWFA and QNIFA by resolved advection while omitting their PBL scalar mixing unless the user sets this option manually. This is especially important for QNWFA2D, which is injected at the lowest model level.

Would it be appropriate for the WRF namelist checks to enable or recommend:

scalar_pblmix = 1

when:

mp_physics == TEMPO
tempo_aerosolaware == 1

except when MYNN performs aerosol/scalar mixing internally?

### 4. factor-of-ten difference in WFA surface emissions
I also found a factor-of-ten difference between the WFA surface-emission tendencies generated by real.exe for Thompson--Eidhammer and aerosol-aware TEMPO.

For the monthly-climatology aerosol initialization, the WRF integration currently calculates:
For mp_physics=28:
    QNWFA2D = W_WIF_NOW * 0.000196 * (50.0 / z1)
For mp_physics=88:
    QNWFA2D = W_WIF_NOW * 0.000196 * (5.0 / z1)

As a result, QNWFA2D in the TEMPO wrfinput/wrfqnainp files is exactly ten times smaller than in an otherwise identical Thompson-Eidhammer configuration. The three-dimensional initial QNWFA and QNIFA fields are identical between the two cases.

Both microphysics implementations subsequently apply the surface tendency as:
    QNWFA(kts) = QNWFA(kts) + QNWFA2D * dt

I could not identify a compensating unit conversion or factor of ten in the TEMPO surface-emission application. Is the use of 5.0/z1 for TEMPO intentional? If not, the WRF host integration should use the same 50.0/z1 scaling for both schemes so that Thompson-versus-TEMPO experiments do not include an unintended tenfold difference in WFA forcing.

### 5.  real.exe correctly creates nonzero three-dimensional aerosol fields in wrfinput_d01:
- QNWFA: approximately 1.16e8 to 3.25e9 kg-1
- QNIFA: approximately 4.0e-5 to 5.26e7 kg-1

However, all corresponding lateral-boundary values and tendencies in wrfbdy_d01 are zero:

- QNWFA_BXS/BXE/BYS/BYE
- QNWFA_BTXS/BTXE/BTYS/BTYE
- QNIFA_BXS/BXE/BYS/BYE
- QNIFA_BTXS/BTXE/BTYS/BTYE

The problem is in main/real_em.F. The aerosol-boundary processing is enabled only for: 
config_flags%mp_physics .EQ. THOMPSONAERO

## Proposed fix

Replace the seven Thompson-only conditions in main/real_em.F with:

IF ( ( config_flags%mp_physics .EQ. THOMPSONAERO .OR. &
       ( config_flags%mp_physics .EQ. TEMPO .AND.      &
         config_flags%tempo_aerosolaware .EQ. 1 ) ) .AND. &
     config_flags%aer_init_opt .GT. 0 ) THEN

This preserves the existing Thompson behavior and enables the same lateral-boundary processing for aerosol-aware TEMPO.



### Questions

1. Is omission of the QNIFA2D tendency in aerosol-aware TEMPO intentional?
2. Should bulk_dust_emis be enabled for aerosol-aware TEMPO?
3. Should WRF automatically set or recommend scalar_pblmix=1 for aerosol-aware TEMPO with YSU?
4. Are there physical constraints in TEMPO that would make direct application of QNIFA2D inappropriate?
5. Is the factor-of-ten reduction in climatological QNWFA2D for TEMPO intentional? Specifically, why does aerosol-aware TEMPO use 5.0/z1 while Thompson--Eidhammer uses 50.0/z1

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions