WRFDA 4DVAR: ERROR while reading namelist at hybrid_opt = 0

Hello everyone,

I am trying to run a 24-hour 4DVAR experiment with WRFDA v4.6.0 and WRFPLUS v4.6.0.

My configuration is:
  • WRF v4.6.0
  • WRFDA v4.6.0
  • WRFPLUS v4.6.0
  • Ubuntu 24.04
  • OpenMPI 4.1.6
  • GNU compiler
  • WRFDA configured with ./configure 4dvar
  • da_wrfvar.exe compiled with -DVAR4D
  • cv_options = 3
My objective is to assimilate a radiosonde observation and METAR observations over Ivato Airport, Madagascar.

The background file is:

fg -&gt; wrfinput_d01<br>
I regenerated the wrfinput_d01 using:

hybrid_opt = 0,use_theta_m = 0, etac = 0.0
and verified the global attributes:

USE_THETA_M = 0 HYBRID_OPT = 0 eTAC = 0
The WRFDA documentation recommends these settings for 4DVAR because WRFPLUS/4DVAR does not work with the hybrid vertical coordinate or moist potential temperature.

I also verified that my WRFDA source contains:
NAMELIST /dynamics/ use_theta_m NAMELIST /dynamics/ hybrid_opt
and:

rconfig integer hybrid_opt namelist,dynamics rconfig integer use_theta_m namelist,dynamics
The generated namelist_statements.inc also contains both variables.

Furthermore, configure.wrf contains:

-DVAR4D
and my executable was successfully rebuilt.

However, when I run:

./da_wrfvar.exe
I get:

Namelist logging not found in namelist.input. Using registry defaults for variables in logging.------ ERROR while reading namelist physics ------<br><br>Maybe here?: hybrid_opt = 0,<br><br>-------------- FATAL CALLED ---------------<br><br>FATAL CALLED FROM FILE: &lt;stdin&gt; LINE: 12469<br><br>ERRORS while reading one or more namelists from namelist.input.<br>

Interestingly, WRFDA creates namelist.output.da, and this file contains:

USE_THETA_M=0 HYBRID_OPT=0
So it appears that WRFDA recognizes these settings, but the subsequent WRF namelist reader still aborts while reading namelist.input.

I previously had another error:

HYBRID_OPT = 2 in fg 4DVAR does not work with hybrid vertical coordinate
After regenerating the background with hybrid_opt=0, this error disappeared.

I also previously encountered:

USE_THETA_M = 1 in fg 4DVAR does not work with moist potential T
After regenerating the background with use_theta_m=0, this error also disappeared.

Therefore, my current problem is specifically the namelist-reading error at:

hybrid_opt = 0
I would appreciate any advice on what could cause this behavior.

Could this be related to:

  1. The WRFDA 4DVAR compilation/configuration?
  2. A mismatch between the WRF and WRFDA Registry files?
  3. The namelist.input structure?
  4. The fact that hybrid_opt is defined in registry.hyb_coord rather than Registry.wrfvar?
  5. A requirement to recompile WRFPLUS/WRFDA after changing these settings?
  6. Some additional WRF namelist options required for a 4DVAR run?
For reference, my WRFDA executable is approximately 96 MB and was rebuilt after configuring with the 4DVAR option.

I would be grateful for any guidance or suggestions on how to diagnose this further.

Thank you.
 
Back
Top