@@ -97,7 +97,6 @@ def create_dataset( # noqa: PLR0912
9797 # epoch coordinate already created with correct attrs
9898 continue
9999 elif key == "epoch_delta" :
100- # Create epoch_delta variable
101100 dataset [key ] = xr .DataArray (
102101 data ,
103102 dims = ["epoch" ],
@@ -109,10 +108,16 @@ def create_dataset( # noqa: PLR0912
109108 "pixel_index" ,
110109 "spin_phase_step" ,
111110 ]:
112- # update attrs
111+ # update attrs on existing coords
113112 dataset [key ].attrs = cdf_manager .get_variable_attributes (
114113 key , check_schema = False
115114 )
115+ elif key in ["energy_range_edges_dim" , "energy_range_flags_dim" ]:
116+ dataset [key ] = xr .DataArray (
117+ data ,
118+ dims = [key ],
119+ attrs = cdf_manager .get_variable_attributes (key , check_schema = False ),
120+ )
116121 elif key in velocity_keys :
117122 dataset [key ] = xr .DataArray (
118123 data ,
@@ -177,24 +182,22 @@ def create_dataset( # noqa: PLR0912
177182 dims = ["energy_bin_geometric_mean" , "pixel_index" ],
178183 attrs = cdf_manager .get_variable_attributes (key , check_schema = False ),
179184 )
180- elif key in {
181- "dead_time_ratio" ,
182- }:
185+ elif key in {"dead_time_ratio" }:
183186 dataset [key ] = xr .DataArray (
184187 data ,
185188 dims = ["spin_phase_step" ],
186189 attrs = cdf_manager .get_variable_attributes (key , check_schema = False ),
187190 )
188- elif key in { "energy_range_edges" } :
191+ elif key == "energy_range_edges" :
189192 dataset [key ] = xr .DataArray (
190193 data ,
191- dims = ["energy_range_edges " ],
194+ dims = ["energy_range_edges_dim " ],
192195 attrs = cdf_manager .get_variable_attributes (key , check_schema = False ),
193196 )
194- elif key in { "energy_range_flags" } :
197+ elif key == "energy_range_flags" :
195198 dataset [key ] = xr .DataArray (
196199 data ,
197- dims = ["energy_ranges " ],
200+ dims = ["energy_range_flags_dim " ],
198201 attrs = cdf_manager .get_variable_attributes (key , check_schema = False ),
199202 )
200203 else :
@@ -225,7 +228,15 @@ def extract_data_dict(dataset: xr.Dataset) -> dict:
225228 data_dict .update (
226229 {
227230 coord : dataset .coords [coord ].values
228- for coord in ("spin_number" , "energy_bin_geometric_mean" , "epoch" )
231+ for coord in (
232+ "spin_number" ,
233+ "energy_bin_geometric_mean" ,
234+ "epoch" ,
235+ "energy_range_flags_dim" ,
236+ "energy_range_edges_dim" ,
237+ "energy_range_flags" ,
238+ "energy_range_edges" ,
239+ )
229240 if coord in dataset .coords
230241 }
231242 )
0 commit comments