Scheduled Downtime
On Friday 21 April 2023 @ 5pm MT, this website will be down for maintenance and expected to return online the morning of 24 April 2023 at the latest

Issue with some variables not writing to auxiliary output stream


New member
I am running simulations using version 4.3 of the WRF, and I have encountered an issue where some variables are only writing to the main WRF output file and not to any auxiliary output file. The specific variables that aren't being written to my auxiliary output stream are those required for the microphysics scheme to calculate reflectivity-in my case, I am using the Thompson scheme, which requires qv, qc, qr, qnr, qs, and qg-as well as a few parcel tracers I added to the model. In the rsl.out files, I get the following message for a failed variable write to the auxiliary output stream (in this case, qv):

W A R N I N G : Unable to modify mask for qv. Variable not found. File: aux_var_file.txt at line 2

I should clarify that some variables (u, v, t, p, ph) are writing to the auxiliary output stream without issue. Also, I would like these variables written to the auxiliary stream every two minutes.

I have tried a few different approaches to solving this issue. First, I updated all the variable entries in the Registry.EM files to specify that they are to be written to both the main output and auxiliary output files. After these changes but before running the model, I cleaned and rebuilt it. I also tried changing the output stream number from something different than 1 (I chose 7 following the WRF user's guide), again cleaning and rebuilding the model after those changes. All entries in the Registry files for variables I want written to the auxiliary output streams look like this:

state real qv ikjftb moist 1 - \
i0rh017usdf=(bdy_interp:dt) "QVAPOR" "Water vapor mixing ratio" "kg kg-1"

I have also tried specifying variables to be included in the auxiliary output at runtime. I created a file in my run directory called "aux_var_file.txt" whose lines look like this:


Originally, all the variables I wanted written to the auxiliary stream were written on one line, but I broke it into three lines to see if I would get a different result.

Are there any other things I am not considering that I could try that may resolve this issue? I appreciate the attention and time!
Apologies for the delay in response. If you are still having this issue, please attach the following. Thanks!

  • namelist.input
  • rsl* files
  • aux_var_file.txt
  • Registry.EM_COMMON (modified version)
Not a problem! All files are attached. I've also attached Registry.EM, as I'm having this issue with a couple of tracers, too. Thanks for taking a look!


  • rsl.error.0000.txt
    3.8 MB · Views: 1
  • rsl.out.0000.txt
    3.8 MB · Views: 1
  • aux_var_file.txt
    178 bytes · Views: 2
  • Registry.EM.txt
    5.5 KB · Views: 1
  • namelist.input.txt
    4.4 KB · Views: 1
  • Registry.EM_COMMON.txt
    414.1 KB · Views: 2
Thanks for sending those. So the messages I see in your rsl.out.0000 file all refer to lines 2 and 3 of the aux_var_file.txt file, and this is because you cannot place the variables on multiple lines. They must all be on one continuous line. I know you said you originally did that with similar results, but can you modify that file and run it again (you only need to run for a short time period just to show the messages in the rsl file) and attach your new aux_var_file.txt file and rsl.out.0000 file?

Can you also issue the following two commands after it runs, and attach the ncdump_*.txt files, as well?

ncdump -h wrfout_d01_2019-07-03_00:00:00 >& ncdump_wrfout.txt

ncdump -h wrfout_parcels_d01_2019-07-03_00:00:00 >& ncdump_aux7.txt
Here are the resulting files from the requested changes. Thanks!


  • rsl.out.0000.txt
    286 KB · Views: 1
  • ncdump_wrfout.txt
    47.2 KB · Views: 1
  • aux_var_file.txt
    173 bytes · Views: 1
  • ncdump_aux7.txt
    7.3 KB · Views: 1
Thank you for testing that and sending those new files. I believe I've figured out the issue. In your "aux_var_file.txt" file, you have the variables listed as (for e.g.,) .....qv,qc,qr,qi....; however, those aren't the actual output variable names. Take a look in the Registry.EM_COMMON file at these example lines

state   real    -              ikjftb   moist       1         -     -    -
state   real    qv             ikjftb   moist       1         -     \
  i0rh01usdf=(bdy_interp:dt) "QVAPOR"           "Water vapor mixing ratio"      "kg kg-1"
state   real    qc             ikjftb   moist       1         -     \
  i0rhusdf=(bdy_interp:dt)   "QCLOUD"           "Cloud water mixing ratio"      "kg kg-1"             
state   real    qr             ikjftb   moist       1         -     \
  i0rhusdf=(bdy_interp:dt)   "QRAIN"            "Rain water mixing ratio"       "kg kg-1"
state   real    qi             ikjftb   moist       1         -     \
  i0rhusdf=(bdy_interp:dt)   "QICE"             "Ice mixing ratio"              "kg kg-1"

The actual variable name for 'qv' is 'QVAPOR.' Try to modify the aux_var_file.txt file and use the variable names in quotes from the registry file and see if that resolves the issue.