Tip
Need help? Please let us know in the SUEWS Community.
Please report issues with the manual on GitHub Issues (or use Report Issue for This Page for page-specific feedback).
Please cite SUEWS with proper information from our Zenodo page.
5.1. Text Format Output#
Since version 2025.10.15 (see release notes), when using
text format (default), SUEWS produces two types of output files:
Simulation output files - Tab-delimited files organised by output group and simulation year. See Output Groups for details.
State persistence file - A CSV file (
df_state_SSss.csv) containing model state for restart and analysis. See State Persistence.
Note
Previous SUEWS versions (prior to 2025.10.15) also produced legacy file formats.
Some features are retained in the modern format (e.g., output level control via
groups), while others have been adapted:
State persistence: Legacy
InitialConditionsSSss_YYYY.nmlfiles replaced by moderndf_state_SSss.csvError/warning messages: Legacy
problems.txtandwarnings.txtfiles are no longer written; diagnostics are emitted to stdout/stderr and handled by the Python runtime logger (SuPy).
See Legacy Features for migration details.
5.1.1. File Naming Convention#
Output files follow the naming pattern:
SSss_YYYY_GROUP_TT.txt
Where:
SS - Site code
ss - Grid number
YYYY - Simulation year
GROUP - Output group name (e.g., SUEWS, snow, ESTM)
TT - Time resolution in minutes
Examples:
Filename |
Meaning |
|---|---|
|
Site “Kc”, grid 01, year 2012, main SUEWS output, 60-min resolution |
|
Site “London”, grid 05, year 2021, snow module output, 30-min resolution |
|
Site “Sm”, grid 12, year 2020, ESTM output, hourly resolution |
|
Site “Kc”, grid 01, daily state (no year/resolution - one file spans all years) |
5.1.2. Output Groups#
SUEWS organises output variables into logical groups. The groups included in your
output are controlled by the groups parameter in your YAML configuration:
model:
control:
output_file:
format: txt
freq: 3600
groups:
- SUEWS
- DailyState
- snow # if snow module enabled
Available output groups:
Core Groups
SUEWS - Main energy and water balance outputs
DailyState - Daily state variables
Optional Groups (require specific modules to be enabled)
snow - Snow module outputs
RSL - Roughness Sublayer profiles
BL - Boundary Layer outputs
ESTM - Element Surface Temperature Model
SPARTACUS - SPARTACUS radiation model (experimental)
Development
debug- Debugging diagnostics (not for production use)
5.1.2.1. Group Details#
- SUEWS -
SSss_YYYY_SUEWS_TT.txt The primary output file containing:
Energy balance components (QH, QE, QS, etc.)
Water balance components (rain, irrigation, runoff)
Meteorological variables (temperature, humidity, wind)
Surface state variables
Ts: Bulk surface temperature (area-weighted average)
Ts_[Surface]: Surface-specific temperatures (e.g., Ts_Paved, Ts_Bldgs)
- DailyState -
SSss_DailyState.txt Daily-resolution state information:
Surface and soil state
Vegetation parameters
One file per grid (may contain multiple years)
Note
Timestamp Convention for DailyState
DailyState uses a different timestamp labelling convention than other output groups to improve readability. While other groups label timestamps with the END of each period (e.g., data for January 1st labelled as “Jan 2 00:00”), DailyState labels with the START of each day (e.g., data for January 1st labelled as “Jan 1”).
This means the row labelled “2012-01-15” in DailyState contains the model state at the end of January 15th, making the output more intuitive to read.
When combining DailyState with other groups (e.g., using
SUEWSOutput.resample()), the date ranges may differ by one day at the boundaries.
- snow -
SSss_YYYY_snow_TT.txt Produced when snow module is enabled:
Snow depth per surface type
Snow water equivalent
Snow melt rates
Snow cover fraction
- RSL -
SSss_YYYY_RSL_TT.txt Roughness Sublayer vertical profiles at 30 levels:
Wind speed profiles
Temperature profiles
Humidity profiles
See Wind, Temperature and Humidity Profiles in the Roughness Sublayer for level details.
- BL -
SSss_YYYY_BL_TT.txt Convective Boundary Layer model outputs:
Boundary layer height
Mixed layer properties
Entrainment fluxes
Created for each day with the CBL model timestep.
- ESTM -
SSss_YYYY_ESTM_TT.txt Element Surface Temperature Model outputs.
Note
ESTM is fully available in the current version. Include
ESTMin youroutput_file.groupsconfiguration to enable this output.- Temperature Layers (5 layers each):
Twall1-5: Wall temperatures (outer to inner layer)
Troof1-5: Roof temperatures (outer to inner layer)
Tground1-5: Ground temperatures (outer to inner layer)
Tibld1-5: Internal building element temperatures
- Key Variables:
Tabld: Indoor air temperature
QSnet: Net storage heat flux
QSwall/QSroof/QSground: Component-specific storage fluxes
Note
First timesteps may show NaN values during the initial convergence phase.
- SPARTACUS -
SSss_YYYY_SPARTACUS_TT.txt SPARTACUS radiation model outputs (experimental):
Multi-layer radiation fluxes
Urban canopy radiation interactions
Sky view factors
5.1.3. State Persistence#
SUEWS automatically saves model state for restart and analysis purposes using the modern CSV-based state file format.
At the end of each simulation, SUEWS writes a df_state_SSss.csv file containing:
Model configuration parameters
Initial and final states for all surface types
Simulation metadata (SUEWS version, timestamps, etc.)
This file can be used to:
Restart simulations - Continue from a saved state
Analyse model state - Inspect internal variables
Chain simulations - Use end state as input for subsequent runs
See df_state_final: model final states for details on the state data structure.
5.1.4. Legacy Features (Deprecated)#
Deprecated since version 2025.10.15: The features in this section are deprecated and retained for backwards compatibility only. Use the YAML-based OutputConfig instead.
5.1.4.1. Legacy Supplementary Files#
- Ss_YYYY_TT_OutputFormat.txt
In the legacy text format (using
RunControl.nml), SUEWS generates this file containing column names, units, and variable descriptions. This file is not generated when using the modern YAML configuration - use Output Variable Reference instead for variable reference.
5.1.4.2. Legacy Output Level Control#
- WriteOutOption (from
RunControl.nml) The old
WriteOutOptionvalues (0, 1, 2) controlled output verbosity. In the modern approach, use thegroupsparameter to explicitly select which output groups to include:# Equivalent to old WriteOutOption=1 (standard output) model: control: output_file: format: txt groups: - SUEWS - DailyState
5.1.4.3. Legacy Initial Conditions Output#
- InitialConditionsSSss_YYYY.nml
The legacy namelist-based initial conditions files are deprecated. Use the modern
df_state_SSss.csvfiles instead (see State Persistence).
See Output Variable Reference for the complete list of output variables.
Note
For detailed column-by-column mappings showing legacy column numbers and WriteOutOption mappings, see the legacy text column reference.