Skip to content

Commit 19e3ee8

Browse files
Fix areacello handler unlimited dimensions error (#319)
Fixes issue where areacello processing fails with "Unlimited dimension(s) {'time'} declared in 'unlimited_dims-kwarg', but not part of current dataset dimensions" error. The remap() function was unconditionally setting 'time' as an unlimited dimension, but areacello datasets don't have a time dimension since they represent time-invariant ocean cell areas. Now checks if 'time' dimension exists before setting it as unlimited. Fixes #317 🤖 Generated with [Claude Code](https://claude.ai/code) Co-authored-by: Claude <[email protected]>
1 parent 79b3dfc commit 19e3ee8

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

e3sm_to_cmip/mpas.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,9 @@ def remap(ds, pcode, mappingFileName):
124124
for varName in ds.data_vars:
125125
ds[varName].attrs.pop("missing_value_mask", None)
126126

127-
write_netcdf(ds, inFileName, unlimited="time")
127+
# Only set time as unlimited if it exists in the dataset dimensions
128+
unlimited_dims = "time" if "time" in ds.dims else None
129+
write_netcdf(ds, inFileName, unlimited=unlimited_dims)
128130

129131
if pcode == "mpasocean":
130132
remap_ocean(inFileName, outFileName, mappingFileName)

0 commit comments

Comments
 (0)