You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Regional configs to read input data using new XIOS API for time varying fields #615
Yes. PR for implementing this functionality is #735
Brief description
Currently the IO API to XIOS that the regional configurations use to read in data fields (e.g. time varying ancillaries, etc.) in specified time chunks (using the time_axis_type), which is a more clunky that the newer API which allows for time-varying fields.
Further details of the issue.
The purpose is the migration of GungHo time-varying ancillaries from the legacy time_axis_type path to the newer file-owned temporal path in lfric_xios_file_type.
The old ancillary path in science/gungho/source/driver/init_ancils_mod.f90 creates one time_axis_type per ancillary group, attaches raw time-window fields to that axis, inserts the axis into model_axes%ancil_times_list, and relies on the driver to refresh the fields.
The goal is to move temporal cache ownership out of the driver and into the file object, while keeping reads bounded to the time slices actually needed by the run.
changed the title [-]Regional modelling configs to read input data at user defined timestamps or time windows[/-][+]Regional configs to read input data at user defined timestamps or time windows[/+]on Jul 13, 2026
changed the title [-]Regional configs to read input data at user defined timestamps or time windows[/-][+]Regional configs to read input data using new XIOS API for time varying fields[/+]on Aug 26, 2026
Activity
[-]Regional modelling configs to read input data at user defined timestamps or time windows[/-][+]Regional configs to read input data at user defined timestamps or time windows[/+][-]Regional configs to read input data at user defined timestamps or time windows[/-][+]Regional configs to read input data using new XIOS API for time varying fields[/+]ricky-lv426 commentedon Aug 26, 2026
Implementation plan (tentative)
Technical details
Inspection of
lfric_coreclarified a few things.lfric_xios_file_typeowns an embeddedtemporal_typefields_in_fileattaches every field in the supplied collection to that filefreqis a file operation cadence in timesteps, not a time-slice counttemporal_typeupdate_freqcontrols model-field refresh cadence and whether interpolation is enabledThis means a migrated ancillary file must be given a dedicated field collection containing only the fields present in that file.
Also the following is noted:
The new path does not currently expose a public window caching setting.
Inside
lfric_core/components/lfric-xios/source/lfric_xios_temporal_mod.x90, the cache window is derived automatically:window_size = 1So the effective cache is currently 1, 2, or 3 slices depending on alignment and interpolation.
This is different from the legacy
time_axis_typepath, wherewindow_sizecould be passed explicitly and defaults to 3.Also the
update_freqis an integer time enum passed intolfric_xios_file_typeand converted insideduration_from_enum(...):update_freq=0disables interpolation and updates the model field only at file time pointsupdate_freq/=0enables interpolation and updates the model field on the requested cadenceSome keyword meanings:
pop_freqtime_axis_typeinterp_flagtime_axis_typefreqlfric_xios_file_typeupdate_freqlfric_xios_file_typewindow_sizetemporal_typeWay forward
The tentative plan for each migrated ancillary file is to:
operation=OPERATION_TIMESERIEStemporal_typemanage the cache and model-field updatestime_axis_typeobjectsThe main setup point for this would be
science/gungho/source/driver/gungho_setup_io_mod.F90.Issues/details to clarify
window_sizecould be passed explicitly, to in hidden window cache size setting of the new api.