Skip to content

Troubleshooting

dwfncar edited this page Oct 9, 2026 · 4 revisions

Troubleshooting

The Makefile rejects MUSICA

Use pkg-config to inspect the selected installation:

pkg-config --modversion musica-fortran
pkg-config --variable=source_revision musica-fortran
pkg-config --variable=miem_revision musica-fortran
pkg-config --variable=miem_enabled musica-fortran
pkg-config --variable=tuvx_enabled musica-fortran

Put the pinned package's lib/pkgconfig (lib64/pkgconfig on Derecho) first in PKG_CONFIG_PATH. Rebuild MUSICA and MPAS with the same compiler family and compatible NetCDF libraries if the metadata is correct but the link probe fails.

TUV-x cannot open a data file

The supplied JSON paths begin with data/. From the run directory, verify that data/grids, data/profiles, data/cross_sections, and data/quantum_yields come from the pinned MUSICA checkout. Do not run from a different working directory unless all relative paths are adjusted.

TUV-x reports no O3 tracer

An active TUV-x configuration requires the mechanism to define O3 and the MPAS state to expose its qO3 tracer. Check the exact mechanism species name and the initialization log's runtime species list.

The upper-column configuration is fatal

The consistency rules are strict:

  • none: top-extension flag false and both extension paths empty;
  • legacy_static: top-extension flag true and a valid static CSV; or
  • spatial_climatology: top-extension flag true and a valid exact-grid prescribed-field package.

Do not specify both static and spatial inputs. Any mode other than none also requires config_tuvx_config_file, spatial_climatology requires a Gregorian calendar, and the first extension edge must match the model top within 0.5 m.

MIEM rejects the calendar or time range

MIEM requires a Gregorian model clock. The inventory xtime records must bracket the entire simulation; linear and nearest interpolation do not permit runtime extrapolation. Check the initial state's xtime as well as the namelist start/stop interval.

MIEM rejects mesh identity or geometry

An inventory is not a generic lat-lon file. It must be preprocessed onto the exact MPAS mesh in ascending indexToCellID order and carry the mesh fingerprint attributes and a field manifest; MIEM then checks its cell IDs, areas, coordinates, and geometry flags against the running mesh. Recreate the package from the same static mesh instead of editing identity attributes.

Chemistry stops on a block-layout error

The current implementation permits one local MPAS block per MPI task. Select a partition matching the MPI rank count, leave the examples on automatic block decomposition, and remove settings that create multiple local blocks.

A runtime field is missing from output

Runtime variables must still be requested by a stream. Add the exact field name to stream_list.atmosphere.output:

  • photolysis: j_<reaction-name>, for example j_jNO2;
  • converted tracer: vmr_<species-name>;
  • total emissions: emis_<species-name>; or
  • requested sector/category/layer names shown in the initialization log.

Species, reaction, and sector names are case-sensitive.

A VMR field differs after restart

vmr_* fields are output-only diagnostics reconstructed from the authoritative dry-air mass mixing ratio. Compare the transported q<species> state first, then recompute the requested unit conversion at the same model time.

A run starts but chemistry does nothing

Confirm that the executable was built with MUSICA=true and that config_micm_file is nonempty. An empty MIEM file disables emissions; an empty TUV-x file with config_j_no2_max=0 supplies no photolysis parameters; and a zero lightning source disables lightning NOx.

A Docker run fails before model completion

Use the complete command from Docker, including --platform linux/amd64 and --shm-size=1g.

  • A bus error or failure under /dev/shm usually means Docker's default shared-memory allocation was used.
  • Exit status 137 indicates the Docker virtual machine may have exhausted its memory. Allocate at least 8 GiB for the LNOx smoke case.
  • PMIx topology messages can occur under Docker Desktop. They are nonfatal only when the model exits successfully and log.atmosphere.0000.out reports Critical error messages = 0.
  • Do not reduce the runner below eight ranks; the packaged partitions and output checks use exactly eight.

Clone this wiki locally